java编程题:模拟QQ帐号登录,对帐号格式进行验证,即帐号只能是数字型数据,密码框支持敲回车键相当于单击登录按钮的效果。如果登录成功,则出现一确认对话框,显示“XXX,您好!欢迎您!”,如果登录不成功,则出现一消息对话框,显示“对不起,你输入的帐号或密码有误,请重新输入!”,字体大小为13号,单击“关闭”按钮,可关闭此对话框;图片可以随系统时间单号、双号变化
时间: 2024-03-24 12:38:41 浏览: 69
好的,这是一个比较基础的Java编程题目,下面是一份可能的解法:
```
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class QQLogin extends JFrame implements ActionListener {
private JTextField usernameField;
private JPasswordField passwordField;
public QQLogin() {
super("QQ登录");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
JLabel usernameLabel = new JLabel("帐号:");
JLabel passwordLabel = new JLabel("密码:");
usernameField = new JTextField(15);
passwordField = new JPasswordField(15);
passwordField.addActionListener(this);
JPanel inputPanel = new JPanel();
inputPanel.setLayout(new GridLayout(2, 2));
inputPanel.add(usernameLabel);
inputPanel.add(usernameField);
inputPanel.add(passwordLabel);
inputPanel.add(passwordField);
JButton loginButton = new JButton("登录");
loginButton.addActionListener(this);
JPanel buttonPanel = new JPanel();
buttonPanel.add(loginButton);
Container container = getContentPane();
container.setLayout(new BorderLayout());
container.add(inputPanel, BorderLayout.CENTER);
container.add(buttonPanel, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e) {
String username = usernameField.getText();
String password = new String(passwordField.getPassword());
if (!username.matches("\\d+")) {
JOptionPane.showMessageDialog(this, "帐号格式有误,请输入数字型数据!", "错误", JOptionPane.ERROR_MESSAGE);
} else if (username.equals("123456") && password.equals("123456")) {
String message = "欢迎您," + username + "!";
JOptionPane.showMessageDialog(this, message, "登录成功", JOptionPane.INFORMATION_MESSAGE);
} else {
JOptionPane.showMessageDialog(this, "对不起,你输入的帐号或密码有误,请重新输入!", "错误", JOptionPane.ERROR_MESSAGE);
}
}
public static void main(String[] args) {
QQLogin frame = new QQLogin();
frame.setVisible(true);
}
}
```
这个程序使用了Java的Swing库,创建了一个简单的登录窗口。在窗口中,有两个文本框用于输入帐号和密码,一个登录按钮用于提交登录信息。当用户在密码框中敲击回车键时,程序也会自动模拟单击登录按钮。
在`actionPerformed`方法中,我们首先获取用户输入的帐号和密码。然后,我们使用正则表达式检查帐号是否为数字型数据。如果帐号格式有误,程序会弹出一个错误对话框,提示用户重新输入。如果帐号格式正确,我们再判断用户名和密码是否匹配。如果匹配成功,程序会弹出一个确认对话框,显示欢迎信息。如果匹配失败,程序会弹出一个错误对话框,提示用户输入错误。
最后,我们在`main`方法中创建了一个`QQLogin`对象,并将其显示出来。当用户关闭窗口时,程序会自动退出。
阅读全文