JPanel实现登录界面
时间: 2023-07-07 11:30:42 浏览: 37
好的,以下是使用JPanel实现登录界面的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoginPanel extends JPanel implements ActionListener {
private JTextField usernameField;
private JPasswordField passwordField;
private JButton loginButton;
public LoginPanel() {
setLayout(new GridLayout(3, 2));
JLabel usernameLabel = new JLabel("Username:");
add(usernameLabel);
usernameField = new JTextField();
add(usernameField);
JLabel passwordLabel = new JLabel("Password:");
add(passwordLabel);
passwordField = new JPasswordField();
add(passwordField);
loginButton = new JButton("Login");
loginButton.addActionListener(this);
add(loginButton);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == loginButton) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
// TODO: 登录验证逻辑
// 登录成功,跳转到主界面
JFrame frame = (JFrame) SwingUtilities.getRoot(this);
frame.getContentPane().removeAll();
frame.getContentPane().add(new MainPanel());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
}
```
在这个示例中,我们创建了一个继承自JPanel的LoginPanel类,用于显示登录界面。在构造函数中,我们使用GridLayout布局将用户名、密码和登录按钮排列成3行2列的网格。在登录按钮上注册ActionListener,当用户单击该按钮时,我们将获取用户名和密码,并执行登录验证逻辑(这里省略了实现细节)。如果验证通过,我们将从当前窗口中删除LoginPanel并添加一个MainPanel(用于显示主界面),然后重新布局并显示窗口。