Java:创建登录界面

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public abstract class LayoutTest extends JFrame implements ActionListener{
JButton btnLogin,btnExit;
JPanel loginPan;
JLabel lblUser,lblPassword,lblLogo;
JTextField txtUser;
JPasswordField pwdPassword;
Dimension dsSize;
Toolkit toolkit=Toolkit.getDefaultToolkit();
public LayoutTest(){
super(“登录界面”);
loginPan=new JPanel();
this.getContentPane().add(loginPan);
lblUser =new JLabel(“用户名:”);
lblPassword=new JLabel(“密码:”);
txtUser=new JTextField(20);
pwdPassword=new JPasswordField(20);
btnLogin =new JButton(“确定”);
btnExit=new JButton(“取消”);
btnLogin.addActionListener(this);;
btnExit.addActionListener(this);;
Font fontstr=new Font(“宋体”,Font.PLAIN,13);
lblUser.setFont(fontstr);
txtUser.setFont(fontstr);
lblPassword.setFont(fontstr);
pwdPassword.setFont(fontstr);
btnLogin.setFont(fontstr);
btnExit.setFont(fontstr);
lblUser.setForeground(Color.BLACK);
lblPassword.setForeground(Color.BLACK);
btnLogin.setBackground(Color.LIGHT_GRAY);
btnExit.setBackground(Color.LIGHT_GRAY);
loginPan.add(lblUser);
loginPan.add(txtUser);
loginPan.add(lblPassword);
loginPan.add(pwdPassword);
loginPan.add(btnLogin);
loginPan.add(btnExit);
loginPan.setLayout(null);
lblUser.setBounds(30,10,60,25);
lblPassword.setBounds(30,40,60,25);
txtUser.setBounds(80,10,150,25);
pwdPassword.setBounds(80,40,150,25);
btnLogin.setBounds(40,80,80,25);
btnExit.setBounds(140, 80,80,25);
setSize(280,150);
setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
if(ae.getSource() == btnLogin) {
if((txtUser.getText().equals(“user”)) && (pwdPassword.equals(“user”)))
JOptionPane.showMessageDialog(null,”登录成功!”);
else
JOptionPane.showMessageDialog(null, “用户名或者密码错误!”);
}
if(ae.getSource() == btnExit)
System.exit(0);
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
LayoutTest layo=new LayoutTest();
}
}
分析:
创建标题为“登录界面“的图形用户界面,在界面中添加布局方式为NULL的容器,并在容器中添加标签(JLabel):用户名,密码,文本框(JTextField),密码框(JPasswordField),“确定”按钮和“取消”按钮(JButton)。同时,为按钮添加监听器,单击“确定”按钮时,如果输入的用户名和密码均为user,则弹出“登录成功!”的对话框;如果输入用户名和密码错误时,则弹出“用户名或密码错误!“的对话框。单击”取消“按钮时,则关闭当前图形用户界面。
知识点:
1)事件处理
一般步骤:(1)定义事件的类并实现事件的监听器接口
(2)在创建组件时注册事件的监听器
(3)在事件处理类中重写事件处理的方法体
2)WindowEvent
添加事件监听器的方法:addWindowListener(this)
常用的关闭窗口的方法:dispose()和System.exit(0)
3)KeyEvent
接口定义方法:
public void KeyPressed(KryEvent e) //按下键盘按键
public void KeyReleased(KeyEvent e) //释放键盘按键
public void KeyTyped(KeyEvent e) //按下一个可产生可见字符的按键
4)MouseEvent
(1)mouseLisenter接口定义方法:
mousePressed(MouseEvent e)
mouseReleased(MouseEvent e)
mouseClicked(MouseEvent e)
mouseEntered(MouseEvent e)
mouseExited(MouseEvent e)
getClickCound()
(2)mousemotionListener接口定义方法:
mouseMoved(MouseEvent e)
mouseDragged(MouseEvent e)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值