创建登陆界面
package xiaox; //创建一个java项目,名字为xiaox
import javax.swing.*; //创建Swing库
import java.awt.*; //引入java接口
import java.awt.event.*;//引入java接口
public class LoadIn extends JFrame implements ActionListener { //创建类LoadIn , 继承类JFame 实现接口ActionListener(事件监听器)。
//private static final long serialVersionUID = 1L;
//private static final Object PwdPassword = null;
JPanel loginPan; //定义变量
JButton btnLogin,btnExit;//定义登录按钮和退出按钮
JLabel lblUser,lblPassword,lblLogo;//定义变量
Dimension dsSize;
Toolkit toolkit = Toolkit.getDefaultToolkit();
JTextField txtUser;
JPasswordField pwdPassword;
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);
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); //采用NULL布局
lblUser.setBounds(30,10,60,25); //设置组件在容器中的位置
lblPassword.setBounds(30,40,60,25); //设置组件在容器中的位置
txtUser.setBounds(80,10,150,35); //设置组件在容器中的位置
pwdPassword.setBounds(80,40,150,25); //设置组件在容器中的位置
btnLogin.setBounds(40,80,80,25); //设置组件在容器中的位置
btnExit.setBounds(140,80,80,35); //设置组件在容器中的位置
setResizable(false);
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 自动生成的方法存根
LoadIn load = new LoadIn(); //为 LoadIn创建一个对象load
}
}
1.知识重点:
1)WindowEvent 事件处理。
2)KeyEvent 事件处理。
3)MouseEvent 事件处理。
2.知识点分析:
事件是用户对程序某一种功能的操作。自JDK1.1以后,java 的事件处理模式是以委托事件模式(Delegation Event Model)来处理用户所触发的事件。
事件处理需要注意一些 3个方面:
1)事件产生的来源(Source)。
2)要处理什么事件。
3)编写事件处理程序。
3.心得体会:
首先,经过这次任务的学习,懂得了怎么样创建类来继承JFrame,实现接口ActionListener(事件监听器);学会了定义容器,并在容器中添加标签,理解了怎样应用NULL布局,其次,学会了设置界面的标题:那就是在创建的类的方法下用super()括号里面的内容是代表着什么,以及与标题的联系。如果要把组件添加到容器中时用组件.add()括号中加入要添加的标签即可;也懂得了怎么样设置界面的可见性、大小,大小的限定,分别用:setSize()括号加入要设置的界面的大小,setVisible()括号中可以加入false/true。false表示界面不可见,而true表示界面可见。setResizeable()括号中可以加入false/true,false表示界面大小不可以改变,只能是用户设置好的界面的大小,而true表示界面大小可以改变用户设置的界面大小。如果一个人放下心中的包袱,能生巧,来日方长找到自信,相信我们每一个人都是一部精密的计算机,程序人生。