简单swing登录及鼠标移动事件的使用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/**
*我2个题写在一起了
*/




package com.niit.swing;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

public class Login extends BaseSwing implements ActionListener {
private static final String RE = "[a-z|A-Z]\\w{5,11}";//正则表达式,字母开头6-12位
//初始化
private JPanel jPanel = null;
private JPanel jPanel1 = null;
private JPanel jPanel2 = null;
private JLabel jLabel1 = null;
private JLabel jLabel2 = null;
private JLabel jLabel3 = null;
private JTextField jTextField1 = null;
private JTextField jTextField2 = null;
private JTextField jTextField3 = null;
private JPasswordField jPasswordField = null;
private JButton jButton = null;

@Override
public void createJpanel() {
MouseAdapter11 mouseAdapter11 = new MouseAdapter11();//鼠标移动适配器
//初始化
jPanel = new JPanel();
jPanel1 = new JPanel();
jPanel2 = new JPanel();
jLabel1 = new JLabel();
jLabel2 = new JLabel();
jLabel3 = new JLabel();
jTextField1 = new JTextField("用户名:");
jTextField2 = new JTextField("密码:");
jTextField3 = new JTextField();
jPasswordField = new JPasswordField();
jButton = new JButton("confirm");
jTextField1.setBackground(Color.BLUE);//定义背景颜色为蓝
jTextField2.setBackground(Color.BLUE);
jTextField1.setEditable(false);//不可被编辑
jTextField2.setEditable(false);
jPanel.setLayout(new BorderLayout(5, 5));//设置边框布局
jPanel.add(jPanel1, BorderLayout.CENTER);//子jPanel1在center
jPanel.add(jPanel2, BorderLayout.SOUTH);//子jPanel2在south
jPanel1.setLayout(new GridLayout(2, 3, 5, 5));//设置jPanel1布局为网格布局
//添加jTextField1,jTextField3,jLabel1,jTextField2,jPasswordField,jLabel1到jPanel1中
jPanel1.add(jTextField1);
jPanel1.add(jTextField3);
//jLabel字体显示靠左
jLabel1.setHorizontalAlignment(JTextField.LEFT);
jLabel2.setHorizontalAlignment(JTextField.LEFT);
jLabel3.setHorizontalAlignment(JTextField.LEFT);
jPanel1.add(jLabel1);
jPanel1.add(jTextField2);
jPanel1.add(jPasswordField);
jPanel1.add(jLabel2);
jPanel2.setLayout(new GridLayout(1, 2, 5, 5));//设置jPanel2布局为网格布局
//添加jButton,(jLabel3到jPanel2中
jPanel2.add(jButton);
jPanel2.add(jLabel3);
jButton.addActionListener(this);//按钮监听器
jPanel.addMouseMotionListener(mouseAdapter11);//鼠标移动监听器
this.getContentPane().add(jPanel);
}

//主函数

public static void main(String[] args) {
Login login = new

Login();//实例化login
login.createNewJframe("jkl");//调用显示的方法
}

@Override
public void actionPerformed(ActionEvent e) {
//初始化为空
jLabel1.setText("");
jLabel2.setText("");
jLabel3.setText("");
//判断用户名格式
if (!jTextField3.getText().matches(RE)) {
jLabel1.setText("用户名不对,字母开头6-12位");
} else {
if (jTextField3.getText().equals("hahaha")) {
jLabel3.setText("输入的用户名已存在!!!");
}
jLabel3.setText("注册成功!!!");//若格式对且用户不存在则创建成功
}
//判断密码格式
if (!jPasswordField.getText().matches(RE)) {
jLabel2.setText("密码不对,字母开头6-12位");
}

}
}





package com.niit.swing;

import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

public class MouseAdapter11 extends MouseMotionAdapter{//定义一个适配器继承MouseMotionAdapter
//重写方法
public void mouseMoved(MouseEvent e){
System.out.println("move"+"\t"+e.getX()+"\t"+e.getY());//鼠标移动显示 move x y
}
}

相关文档
最新文档