面向对象程序设计Java设计登录页面 username password phonenumber 实例化以及JFrame代码
时间: 2024-09-25 10:06:29 浏览: 19
在Java中设计一个简单的登录页面,包含username、password和phonenumber三个字段,我们可以使用Swing库来创建GUI组件。下面是一个基本的示例,展示了如何创建一个JFrame窗口,并实例化一个包含这些字段的User对象。假设User类已存在,它包含了这些字段和相关的验证方法。
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class LoginFrame extends JFrame {
private JTextField usernameField;
private JPasswordField passwordField;
private JTextField phoneNumberField;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
LoginFrame loginFrame = new LoginFrame();
loginFrame.setVisible(true);
}
});
}
public LoginFrame() {
setTitle("Login Page");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(3, 1, 5, 5)); // 3行1列布局,间距设置
JLabel usernameLabel = new JLabel("Username:");
usernameField = new JTextField(20);
panel.add(usernameLabel);
panel.add(usernameField);
JLabel passwordLabel = new JLabel("Password:");
passwordField = new JPasswordField(20); // 密码框不可见
panel.add(passwordLabel);
panel.add(passwordField);
JLabel phoneNumberLabel = new JLabel("Phone Number:");
phoneNumberField = new JTextField(20);
panel.add(phoneNumberLabel);
panel.add(phoneNumberField);
JButton submitButton = new JButton("Submit");
submitButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword()); // 显示密码之前需要转换为字符串
String phoneNumber = phoneNumberField.getText();
User user = new User(username, password, phoneNumber);
// 这里只是模拟实例化和验证,实际应用中应调用User类的相应方法
if (user.validate()) { // 假设validate()方法检查输入的有效性
System.out.println("Login successful with details: " + user);
} else {
JOptionPane.showMessageDialog(null, "Invalid credentials or phone number.");
}
}
});
panel.add(submitButton);
add(panel);
}
}
// 假设User类如下:
class User {
private String username;
private String password;
private String phoneNumber;
public User(String username, String password, String phoneNumber) {
this.username = username;
this.password = password;
this.phoneNumber = phoneNumber;
}
// 省略validate()方法和其他相关逻辑
}
```
阅读全文