用jframe设计一个窗口点击注册后跳转注册界面
时间: 2023-08-04 18:19:36 浏览: 70
可以使用以下代码示例来实现在JFrame窗口中点击注册按钮后跳转到注册界面:
```
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MainFrame extends JFrame {
private JButton registerButton;
public MainFrame() {
// 设置窗口的基本属性
setTitle("主窗口");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setLayout(new FlowLayout());
// 创建注册按钮
registerButton = new JButton("注册");
add(registerButton);
// 为注册按钮添加点击事件的监听器
registerButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 创建注册窗口并显示
RegisterFrame registerFrame = new RegisterFrame();
registerFrame.setVisible(true);
// 隐藏主窗口
setVisible(false);
}
});
}
// 注册窗口类
private class RegisterFrame extends JFrame {
public RegisterFrame() {
setTitle("注册");
setSize(300, 200);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setLocationRelativeTo(null);
// 创建注册界面的组件
JLabel nameLabel = new JLabel("用户名:");
JTextField nameField = new JTextField(20);
JLabel pwdLabel = new JLabel("密码:");
JPasswordField pwdField = new JPasswordField(20);
JButton confirmButton = new JButton("确认");
confirmButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 注册成功后,关闭注册窗口并显示主窗口
JOptionPane.showMessageDialog(null, "注册成功!");
dispose();
MainFrame.this.setVisible(true);
}
});
// 将组件添加到注册界面中
setLayout(new GridLayout(3, 2));
add(nameLabel);
add(nameField);
add(pwdLabel);
add(pwdField);
add(confirmButton);
}
}
public static void main(String[] args) {
MainFrame mainFrame = new MainFrame();
mainFrame.setVisible(true);
}
}
```
在上面的代码中,我们创建一个JFrame窗口作为主窗口(MainFrame),并在其中添加一个注册按钮。当用户点击这个按钮时,我们创建一个新的JFrame窗口(RegisterFrame),并将其显示出来。
在RegisterFrame窗口中,我们创建了注册界面的组件,并添加了一个确认按钮。当用户点击确认按钮时,我们弹出一个提示框表示注册成功,并关闭注册窗口并显示主窗口(即将主窗口设置为可见)。
需要注意的是,我们在RegisterFrame窗口中使用dispose()方法来关闭窗口,而在MainFrame窗口中使用setVisible(false)方法来隐藏窗口。这是因为,关闭窗口会将窗口从内存中删除,而隐藏窗口则只是将窗口隐藏起来,不会删除窗口。