import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Login {
public static void main(String args[]) {
Login l=new Login();
l.showUI();
}
public void showUI() {
javax.swing.JFrame jf = new javax.swing.JFrame();
jf.setTitle("登录界面");
jf.setSize(500, 190);
jf.setDefaultCloseOperation(3);//直接关闭应用程序,System.exit(0)
jf.setLocationRelativeTo(null);//窗口居中
jf.setResizable(false);//窗体大小不可变
java.awt.FlowLayout fl = new java.awt.FlowLayout(FlowLayout.LEFT, 30, 10);
jf.setLayout(fl);
java.awt.Dimension dim1 = new java.awt.Dimension(200, 30);//标签的大小
java.awt.Dimension dim2 = new java.awt.Dimension(180, 30);//输入框的大小
java.awt.Dimension dim3 = new java.awt.Dimension(100, 30);//按钮的大小
//添加组件
//登录名标签
JLabel labname = new JLabel();
labname.setText("登录名:");
labname.setPreferredSize(dim1);
jf.add(labname);
//密码标签
JLabel labpassword = new JLabel();
labpassword.setText("密码:");
labpassword.setPreferredSize(dim1);
jf.add(labpassword);
//登陆名输入框,监控事件
JTextField textname = new JTextField();
textname.setPreferredSize(dim2);
jf.add(textname);
//密码输入框,监控事件
JPasswordField jp = new JPasswordField();
jp.setPreferredSize(dim2);
jf.add(jp);
//添加button按钮
javax.swing.JButton button1 = new javax.swing.JButton();
button1.setText("登录");
button1.setPreferredSize(dim3);
jf.add(button1);
javax.swing.JButton button2 = new javax.swing.JButton();
button2.setText("取消");
button2.setPreferredSize(dim3);
jf.add(button2);
jf.setVisible(true);
LoginListener ll = new LoginListener(jf, textname, jp);
button1.addActionListener(ll);
CancelListener cancel =new CancelListener();
button2.addActionListener(cancel);
}
public class CancelListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
}
public class LoginListener implements ActionListener {
private javax.swing.JTextField jt;//账号输入框对象
private javax.swing.JPasswordField jp;//密码输入框对象
private javax.swing.JFrame login;//定义一个窗体对象
public LoginListener(javax.swing.JFrame login,javax.swing.JTextField jt,javax.swing.JPasswordField jp) {
this.login=login;//获取登录界面
this.jt=jt;//获取登录界面中的账号输入框对象
this.jp=jp;//获取登录界面中的密码输入框对象
}
public void actionPerformed(ActionEvent e) {
if(jt.getText().equals("Mike")&&jp.getText().equals("123")) {
JOptionPane.showMessageDialog(null,"登陆成功","成功",1);
}
else if(!(jt.getText().equals("1")&&jp.getText().equals("1")) ){
JOptionPane.showMessageDialog(null,"登录名或密码错误","失败",0);
}
}
}
}
Java swing 实现登陆窗口
最新推荐文章于 2025-10-15 14:20:46 发布
本文介绍了使用Java Swing库创建一个简单的登录界面,包括用户名输入、密码输入框,并实现了登录名和密码的验证,以及登录和取消操作的事件监听。
660





