java swing 写一个登录窗口
时间: 2024-03-17 10:40:09 浏览: 12
好的,下面是一个简单的 Java Swing 登录窗口示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoginWindow extends JFrame implements ActionListener {
// 登录界面组件
private JLabel titleLabel = new JLabel("登录窗口");
private JLabel usernameLabel = new JLabel("用户名:");
private JTextField usernameTextField = new JTextField(20);
private JLabel passwordLabel = new JLabel("密 码:");
private JPasswordField passwordField = new JPasswordField(20);
private JButton loginButton = new JButton("登录");
private JButton resetButton = new JButton("重置");
public LoginWindow() {
// 设置窗口标题和大小
setTitle("登录窗口");
setSize(400, 300);
// 设置窗口居中
setLocationRelativeTo(null);
// 设置窗口关闭操作
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 设置窗口布局为网格布局
setLayout(new GridLayout(4, 2, 10, 10));
// 添加组件到窗口
add(titleLabel);
add(new JLabel(""));
add(usernameLabel);
add(usernameTextField);
add(passwordLabel);
add(passwordField);
add(loginButton);
add(resetButton);
// 注册按钮点击事件监听器
loginButton.addActionListener(this);
resetButton.addActionListener(this);
}
// 实现按钮点击事件监听器接口
public void actionPerformed(ActionEvent e) {
if (e.getSource() == loginButton) {
// 获取用户名和密码
String username = usernameTextField.getText();
String password = new String(passwordField.getPassword());
// 实现用户登录逻辑
if (username.equals("admin") && password.equals("123456")) {
JOptionPane.showMessageDialog(this, "登录成功!");
} else {
JOptionPane.showMessageDialog(this, "用户名或密码错误!");
}
} else if (e.getSource() == resetButton) {
// 重置用户名和密码
usernameTextField.setText("");
passwordField.setText("");
}
}
public static void main(String[] args) {
LoginWindow loginWindow = new LoginWindow();
loginWindow.setVisible(true);
}
}
```
这个窗口包含一个标题、两个标签、两个文本框、两个按钮,可以用于进行用户登录。其中,`actionPerformed()` 方法实现了按钮点击事件监听器的逻辑,根据点击的按钮进行不同的操作,例如登录或重置用户名和密码。