package xia;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoadIn extends JFrame implements ActionListener {
JPanel loginPan; //定义变量。
JButton btnLogin,btnExit;
JLabel lblUser,lblPassword,lblLogo;
JTextField txtUser;
JPasswordField pwdPassword;
Dimension dsSize;
Toolkit toolkit=Toolkit.getDefaultToolkit();
public LoadIn() {
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.DARK_GRAY);
btnExit.setBackground(Color.DARK_GRAY);
loginPan.add(lblUser); //将组件添加到容器中。
loginPan.add(txtUser);
loginPan.add(lblPassword);
loginPan.add(pwdPassword);
loginPan.add(btnLogin);
loginPan.add(btnExit);
loginPan.setLayout(null); //采用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); //结束
setResizable(false); //设置界面的大小,可见性,是否可改变大小.
setSize(280,150);
setVisible(true); //设置结束.
}
public void actionPerformed(ActionEvent ae) {
if(ae.getSource()==btnLogin) { //判断开始.如果用户名和密码正确,则输出"登录成功".反之失败.
if((txtUser.getText().equals("sw"))&&(pwdPassword.getText().equals("sw")))
JOptionPane.showMessageDialog(null, "登陆成功!");
else
JOptionPane.showMessageDialog(null, "用户名或密码错误!");
}
if(ae.getSource()==btnExit)
System.exit(0); //判断结束.
}
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
知识要点:
.事件处理概述
.WindowEvent事件处理
.KeyEvent事件处理
.MouseEvent事件处理
知识点分析:
1.事件处理:事件是用户对程序某一种功能的操作,
事件处理需要注意三个方面:
.事件产生的来源
.要处理什么事件
.编写事件处理程序
2.WindowEvent: 为窗口添加事件监听时的接口为WindowEvent
3.KeyEvent实现对键盘事件的处理
4.实现对鼠标事件的处理