java编程仿照例题设计一个用户登录窗口,窗口标题栏是登录窗口,设置窗口图标,窗口不能最大化,窗口显示在屏幕中央,窗口显示如下图:连接数据库,输入用户名和密码,输入正确,显示用户名和密码输入正确,否则显示用户名输入错误或者密码输入错误。
时间: 2023-08-20 12:07:19 浏览: 201
好的,我会尽力回答您的问题,下面是Java编写的用户登录窗口的代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoginWindow extends JFrame implements ActionListener {
private JLabel userLabel, passwordLabel, messageLabel;
private JTextField userTextField;
private JPasswordField passwordField;
private JButton loginButton;
public LoginWindow() {
setTitle("登录窗口");
setIconImage(new ImageIcon("icon.png").getImage()); // 设置窗口图标
setResizable(false); // 窗口不能最大化
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建登录窗口中的控件
userLabel = new JLabel("用户名:");
passwordLabel = new JLabel("密码:");
messageLabel = new JLabel("");
userTextField = new JTextField();
passwordField = new JPasswordField();
loginButton = new JButton("登录");
// 设置控件的位置和大小
userLabel.setBounds(50, 50, 80, 30);
passwordLabel.setBounds(50, 100, 80, 30);
userTextField.setBounds(130, 50, 150, 30);
passwordField.setBounds(130, 100, 150, 30);
loginButton.setBounds(130, 150, 80, 30);
messageLabel.setBounds(50, 200, 250, 30);
// 设置控件的字体大小
userLabel.setFont(new Font("宋体", Font.PLAIN, 16));
passwordLabel.setFont(new Font("宋体", Font.PLAIN, 16));
userTextField.setFont(new Font("宋体", Font.PLAIN, 16));
passwordField.setFont(new Font("宋体", Font.PLAIN, 16));
loginButton.setFont(new Font("宋体", Font.PLAIN, 16));
messageLabel.setFont(new Font("宋体", Font.PLAIN, 16));
// 将控件添加到窗口中
add(userLabel);
add(passwordLabel);
add(userTextField);
add(passwordField);
add(loginButton);
add(messageLabel);
// 为登录按钮添加事件监听器
loginButton.addActionListener(this);
// 设置窗口大小并将窗口显示在屏幕中央
setSize(350, 300);
setLocationRelativeTo(null);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
String username = userTextField.getText();
String password = new String(passwordField.getPassword());
// 连接数据库,查询用户名和密码是否正确
// 这里省略了连接数据库的代码,直接模拟查询
if (username.equals("admin") && password.equals("123456")) {
messageLabel.setText("用户名和密码输入正确");
} else if (username.equals("admin")) {
messageLabel.setText("密码输入错误");
} else if (password.equals("123456")) {
messageLabel.setText("用户名输入错误");
} else {
messageLabel.setText("用户名和密码输入错误");
}
}
public static void main(String[] args) {
new LoginWindow();
}
}
```
说明:
1. 继承 JFrame 类并实现 ActionListener 接口,以便为登录按钮添加事件监听器。
2. 在构造函数中设置窗口标题、图标、不可最大化、关闭操作,创建控件并设置位置、大小、字体大小,添加事件监听器,将控件添加到窗口中,设置窗口大小并显示在屏幕中央。
3. 在 actionPerformed 方法中获取用户名和密码的值,模拟连接数据库查询用户名和密码是否正确,根据查询结果设置 messageLabel 的文本内容。
阅读全文