以下是一个简化的图书管理系统的登录界面代码实例:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class LoginFrame extends JFrame {
private JTextField userTextField;
private JPasswordField passwordField;
private JButton loginButton;
public LoginFrame() {
initComponents();
layoutComponents();
setTitle("图书管理系统 - 登录");
setSize(300, 200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocationRelativeTo(null);
}
private void initComponents() {
userTextField = new JTextField(15);
passwordField = new JPasswordField(15);
loginButton = new JButton("登录");
loginButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = userTextField.getText();
String password = new String(passwordField.getPassword());
// 这里应该添加逻辑以检查用户名和密码是否正确,并且用户具有登录权限
// 例如,可以连接到数据库并查询用户凭据
boolean isAuthenticated = authenticate(username, password);
if (isAuthenticated) {
JOptionPane.showMessageDialog(null, "登录成功!", "成功", JOptionPane.INFORMATION_MESSAGE);
// 成功登录后,打开主应用程序界面
} else {
JOptionPane.showMessageDialog(null, "登录失败,请检查您的用户名和密码。", "错误", JOptionPane.ERROR_MESSAGE);
}
}
});
}
private void layoutComponents() {
setLayout(new BorderLayout());
JPanel loginPanel = new JPanel();
loginPanel.add(new JLabel("用户名:"));
loginPanel.add(userTextField);
loginPanel.add(new JLabel("密码:"));
loginPanel.add(passwordField);
add(loginPanel, BorderLayout.CENTER);
add(loginButton, BorderLayout.SOUTH);
}
// 这个方法应该连接数据库,查询用户凭据,并返回是否认证成功
private boolean authenticate(String username, String password) {
// 模拟认证过程,实际应用中应该查询数据库
return "admin".equals(username)