Я создал два swing.JFrame
s. графический интерфейс пользователя и пользовательский интерфейс пользователя. что я хочу, когда он переключается войти в графический интерфейс для пользователя графического интерфейса, есть в пользовательском графическом интерфейсе, который должен быть изменен как ("you're logged in as" + username);
бегущие методы, объявленные в swing.Jframe Класс
Я попробовал этот код в user
исходном коде JFrame Jlabel
.
`loggedInAsLable.setText("you're logged in as" + username);`
в способе, и это называется в главном методе пользователя jframe
. но по некоторым причинам не работает.
Как я могу запустить некоторые методы, когда Jframe становится видимым?
public class CustomerServiceOfficerUI extends javax.swing.JFrame {
private static Statement st;
ResultSet rs;
Connection con = null;
Login loginUI = new Login(); // gets current user Id
Employee cso = new CustomerServiceOfficer(); //creates new customer service officer object
/**
* Creates new form CustomerServiceOfficer
*/
public CustomerServiceOfficerUI() {
initComponents();
}
public void getCSOdetails() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/flyingcarsdb", "root", "");
System.out.println("database connected");
} catch (ClassNotFoundException | SQLException ex) {
System.out.println("Error: " + ex);
}
try {
// Retrieve customer service officer details
st = con.createStatement();
String query = "select * FROM customerserviceofficer WHERE Id = '" + loginUI.getCurrentUserId() + "'";
rs = st.executeQuery(query);
while (rs.next()) {
//Assign the details with setters
cso.setFname(rs.getString("Fname"));
cso.setEmail(rs.getString("Email"));
}
} catch (Exception ex) {
System.out.println("Error : " + ex);
}
loggedInAsLable.setText("you're logged in as : " + cso.getId());
//this is where LABLE is changed, 'cso.getId()' returns the user ID
}
Показать свой код, где вы меняете метку –
Во-первых, не используйте для этого фрейм, используйте диалоговое окно для входа в систему. Когда пользователь аутентифицируется и диалог закрывается, он должен возвращать информацию о сеансе вызывающего. Это основа для [Model-View-Controller] (http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) – MadProgrammer
Я добавил код. lable обрабатывается методом. 'getCSOdetails()', и этот метод вызывается в основном методе класса CustomerServiceOfficerUI. –