用Java使用BoxLayout设计登录界面包括 用户名、密码 标签和文本输入框 登录和取消按钮。
时间: 2024-10-27 10:02:05 浏览: 45
在Java中,我们可以使用BoxLayout布局管理器来创建一个整洁的登录界面。BoxLayout通常用于水平或垂直方向的布局。下面是一个简单的例子,展示如何使用BoxLayout设计登录界面:
```java
import javax.swing.*;
import java.awt.*;
public class LoginForm extends JFrame {
private JPanel panel;
private JTextField usernameField;
private JPasswordField passwordField;
private JLabel nameLabel;
private JButton loginButton;
private JButton cancelButton;
public LoginForm() {
// 设置窗口的基本属性
setTitle("Login Form");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建面板
panel = new JPanel(new BoxLayout(panel, BoxLayout.Y_AXIS));
// 添加标签和文本输入框
nameLabel = new JLabel("用户名:");
panel.add(nameLabel);
usernameField = new JTextField(20);
panel.add(usernameField);
// 密码字段需要保密,所以使用JPasswordField
JLabel passwordLabel = new JLabel("密码:");
panel.add(passwordLabel);
passwordField = new JPasswordField(20);
panel.add(passwordField);
// 添加登录和取消按钮
loginButton = new JButton("登录");
cancelButton = new JButton("取消");
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
buttonPanel.add(loginButton);
buttonPanel.add(Box.createHorizontalGlue());
buttonPanel.add(cancelButton);
// 将按钮面板添加到主面板
panel.add(buttonPanel);
// 设置焦点到用户名字段
usernameField.requestFocus();
// 添加面板到窗口
add(panel);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
new LoginForm().setVisible(true);
});
}
}
```
阅读全文