java 怎么实现两个窗体的切换

2024-11-30 18:05:27
推荐回答(5个)
回答1:

1:登录界面代码:
import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.WindowConstants;

public class Login extends javax.swing.JFrame {
private JPanel jPanel1;

private JButton bntOk;

public static void main(String[] args) {
Login inst = new Login();
inst.setLocationRelativeTo(null);
inst.setVisible(true);

}

public Login() {
super("登录界面");
initGUI();
}

private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
{
jPanel1 = new JPanel();
getContentPane().add(jPanel1, BorderLayout.CENTER);
jPanel1.setLayout(null);
{
bntOk = new JButton();
jPanel1.add(bntOk);
bntOk.setText("登录");
bntOk.setBounds(100, 141, 69, 30);
bntOk.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
Login.this.setVisible(false);
Main main = new Main();
main.setVisible(true);
}
});
}
}
pack();
setSize(400, 300);
} catch (Exception e) {
e.printStackTrace();
}
}

}

2:主界面:

import javax.swing.WindowConstants;

public class Main extends javax.swing.JFrame {

public Main() {
super("主界面");
initGUI();
}

private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
pack();
setSize(400, 300);
} catch (Exception e) {
e.printStackTrace();
}
}

}

回答2:

在那个按钮中写个事件。当你按下的时候。第一个窗口的可见性为false。在在第二个窗口的类中写个方法给show出来。

回答3:

将当前窗口dispose掉 再show你想显示的窗口

回答4:

用setVisible(true)

回答5:

cardLayout