在我登录页面并单击登录按钮后,我的第二帧出现在登录页面的顶部,您仍然可以看到隐藏在下面的组件。单击登录按钮后,为什么它没有消失?
这是我的代码:
public void showLogIn(){
setLayout(new BorderLayout());
setVisible(true);
setSize(400,200);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
logInPanel.setLayout(new GridLayout(2,2,4,4));
logInPanel.add(label1);
logInPanel.add(username);
logInPanel.add(label2);
logInPanel.add(password);
add(logInPanel, BorderLayout.CENTER);
add(loginBut, BorderLayout.SOUTH);
loginBut.addActionListener(this);
}
public void showAdminForm(){
setLayout(new BorderLayout());
setVisible(true);
setSize(400,300);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
label3.setText("Logged in as: " + username.getText());
add(label3, BorderLayout.NORTH);
buttonPanel.add(createRoom);
buttonPanel.add(deleteRoom);
buttonPanel.add(createLect);
buttonPanel.add(deleteLect);
buttonPanel.add(showLect);
buttonPanel.add(logOut);
add(buttonPanel, BorderLayout.CENTER);
}
在动作监听器中,我实现了调用showAdminForm();
之类的东西,但我的登录表单仍然存在。有没有办法我不必用CardLayout
来做?