java窗体登录后跳转另一个_java_程序中创建有2个窗体,一个为登录窗口,连数据库,输入用户名和密码后如何跳转到主窗口...
时间: 2024-02-27 20:55:37 浏览: 25
登录跳转。登录界面跳转到主界面。
5星 · 资源好评率100%
在Java程序中创建两个窗体,一个为登录窗口,另一个为主窗口。用户在登录窗口输入用户名和密码,验证通过后跳转到主窗口,可以按照以下步骤实现:
1. 在登录窗口中创建一个“登录”按钮,用户在输入完用户名和密码后点击该按钮触发登录操作。
2. 在“登录”按钮的事件处理方法中,获取用户输入的用户名和密码,然后调用数据库连接代码进行验证。
3. 如果验证通过,关闭登录窗口,打开主窗口。
4. 在主窗口中添加需要的控件,例如菜单栏、工具栏、表格等。
下面是一个简单的示例代码,可以参考:
```java
// 登录窗口
class LoginFrame extends JFrame {
private JTextField usernameField;
private JPasswordField passwordField;
public LoginFrame() {
// 设置窗口标题、大小、位置等属性
setTitle("登录窗口");
setSize(300, 200);
setLocationRelativeTo(null);
// 创建输入框、标签、按钮等控件,并添加到窗口中
JLabel usernameLabel = new JLabel("用户名:");
JLabel passwordLabel = new JLabel("密 码:");
usernameField = new JTextField(20);
passwordField = new JPasswordField(20);
JButton loginButton = new JButton("登录");
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(3, 2));
panel.add(usernameLabel);
panel.add(usernameField);
panel.add(passwordLabel);
panel.add(passwordField);
panel.add(loginButton);
add(panel);
// 为“登录”按钮添加事件处理方法
loginButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
if (checkLogin(username, password)) {
// 验证通过,打开主窗口
dispose();
new MainFrame().setVisible(true);
} else {
// 验证失败,弹出提示框
JOptionPane.showMessageDialog(LoginFrame.this,
"用户名或密码错误!", "错误", JOptionPane.ERROR_MESSAGE);
}
}
});
}
// 验证用户名和密码是否正确
private boolean checkLogin(String username, String password) {
// TODO: 调用数据库连接代码进行验证
return true;
}
}
// 主窗口
class MainFrame extends JFrame {
public MainFrame() {
// 设置窗口标题、大小、位置等属性
setTitle("主窗口");
setSize(600, 400);
setLocationRelativeTo(null);
// 添加菜单栏、工具栏、表格等控件
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("文件");
JMenuItem openItem = new JMenuItem("打开");
JMenuItem saveItem = new JMenuItem("保存");
fileMenu.add(openItem);
fileMenu.add(saveItem);
menuBar.add(fileMenu);
setJMenuBar(menuBar);
JToolBar toolBar = new JToolBar();
JButton newButton = new JButton("新建");
JButton cutButton = new JButton("剪切");
toolBar.add(newButton);
toolBar.add(cutButton);
add(toolBar, BorderLayout.NORTH);
String[] columnNames = {"姓名", "年龄", "性别"};
Object[][] rowData = {{"张三", 20, "男"}, {"李四", 25, "女"}};
JTable table = new JTable(rowData, columnNames);
JScrollPane scrollPane = new JScrollPane(table);
add(scrollPane, BorderLayout.CENTER);
}
}
// 程序入口
public class Main {
public static void main(String[] args) {
// 打开登录窗口
LoginFrame frame = new LoginFrame();
frame.setVisible(true);
}
}
```
这个示例代码中,登录窗口中有一个“登录”按钮,用户输入完用户名和密码后点击该按钮,会调用`checkLogin()`方法进行验证。如果验证通过,会关闭登录窗口并打开主窗口,主窗口中包含了菜单栏、工具栏、表格等控件。
阅读全文