用户登录续

/*     
* 烟台大学计算机学院学生        
*All right reserved.        
*文件名称:java      
*作者:孔云        
*完成日期:2014年12月16日        
*版本号:v1.0        
*对任务及求解方法的描述部分:当用户点击“确定”按钮时:
 (1)判断用户名是否正确。如果正确,不做任何操作;如果错误,弹出警告对话框,对话框信息内容:“用户名错误,请重新输入!”返回用户输入界面,使其(用户名文本框)获得输入焦点,清空原有内容。
(2)判断用户密码是否正确。如果正确,不做任何操作;如果错误,弹出错误对话框,提示用户密码错误。当用户点击对话框中的“确定”后,返回用户输入界面,使其(用户密码文本框)获得输入焦点,清空原有内容。

*我的程序:     
*/  
import java.awt.*;
public class Windows {
	public static void main(String[] args) {
		windowFrame win=new windowFrame();
		win.setTitle("用户登录");
	}	
}

windowFrame.java

import java.awt.*;
import java.util.Random;
import javax.swing.*;
import javax.swing.event.*;
public class windowFrame extends JFrame {
	Panel panel1;
	JButton button1, button2, button3;
	JTextField texbook1, texbook2;
	JPasswordField password1;
	JLabel label1, label2, label3, label4;
	ActListen listebut;
	String radom;
	public windowFrame() {
		setVisible(true);
		setResizable(false);
		intform();
		intEvent();
	}
	void intform() {
		panel1 = new Panel();
		panel1.setSize(300, 230);
		Toolkit kit = Toolkit.getDefaultToolkit(); // 定义工具包
		Dimension screenSize = kit.getScreenSize(); // 获取屏幕的尺寸
		int screenWidth = screenSize.width / 2; // 获取屏幕的宽
		int screenHeight = screenSize.height / 2; // 获取屏幕的高
		setLocation(screenWidth / 2, screenHeight / 2);
		panel1.setLayout(null);
		label1 = new JLabel("用户名:");
		label1.setBounds(50, 20, 50, 20);
		panel1.add(label1);
		texbook1 = new JTextField();
		texbook1.setBounds(100, 20, 150, 20);
		panel1.add(texbook1);
		label2 = new JLabel("密码:  ");
		label2.setBounds(50, 50, 50, 20);
		panel1.add(label2);
		password1 = new JPasswordField(10);
		password1.setEchoChar('*');
		password1.setBounds(100, 50, 150, 20);
		panel1.add(password1);
		label3 = new JLabel("验证码:");
		label3.setBounds(50, 80, 50, 20);
		panel1.add(label3);
		texbook2 = new JTextField();
		texbook2.setBounds(100, 80, 50, 20);
		panel1.add(texbook2);
		Random rd = new Random();
		radom=Integer.toString(rd.nextInt(8999) + 1000);
		label4 = new JLabel(radom);
		label4.setBounds(200, 80, 40, 20);
		panel1.add(label4);
		button1 = new JButton("确定");
		button1.setBounds(50, 120, 60, 20);
		panel1.add(button1);
		button2 = new JButton("重置");
		button2.setBounds(120, 120, 60, 20);
		panel1.add(button2);
		button3 = new JButton("取消");
		button3.setBounds(190, 120, 60, 20);
		panel1.add(button3);
		add(panel1);
		pack();
	}
	void intEvent() {
		listebut = new ActListen();
		listebut.setpassword1text(password1);
		listebut.settextbook1text(texbook1);
		listebut.settextbook2text(texbook2);
		listebut.setlabel4(label4);
		listebut.setbutton1(button1);
		listebut.setbutton2(button2);
		listebut.setbutton3(button3);
		listebut.setform(this);
		button1.addActionListener(listebut);
		button2.addActionListener(listebut);
		button3.addActionListener(listebut);
	}
}

ActListen.java

import java.awt.event.*;
import java.util.Arrays;
import java.util.Random;
import javax.swing.*;

public class ActListen implements ActionListener {
 JPasswordField pass;
 JTextField text1, text2;
 JLabel label4;
 JButton button1, button2, button3;
 windowFrame form;
 public void setpassword1text(JPasswordField pass) {
  this.pass = pass;
 }

 public void settextbook1text(JTextField text1) {
  this.text1 = text1;
 }

 public void settextbook2text(JTextField text2) {
  this.text2 = text2;
 }

 public void setlabel4(JLabel label4) {
  this.label4 = label4;
 }

 public void setbutton1(JButton button1) {
  this.button1 = button1;
 }

 public void setbutton2(JButton button2) {
  this.button2 = button2;
 }

 public void setbutton3(JButton button3) {
  this.button3 = button3;
 }

 public void setform(windowFrame form) {
  this.form = form;
 }

 public void actionPerformed(ActionEvent e) {
  if (e.getSource() == button1) {
   if (!text1.getText().equals("猴子")) {
    JOptionPane.showMessageDialog(null, "对不起!用户名错误,请重新输入!", "",
      JOptionPane.WARNING_MESSAGE);
    text1.setText(null);
    text1.setFocusable(true);
    return;
   } else {
    if (!Arrays
      .equals(pass.getPassword(), "123kyT".toCharArray())) {
     JOptionPane.showMessageDialog(null, "对不起!密码错误,请重新输入!", "",
       JOptionPane.WARNING_MESSAGE);
     pass.setText(null);
     pass.setFocusable(true);
    } else {
     if (!text2.getText().equals(label4.getText())) {
      JOptionPane.showMessageDialog(null, "对不起!验证码错误,请重新输入!", "",
        JOptionPane.WARNING_MESSAGE);
      Random rd = new Random();
      label4.setText(Integer.toString(rd.nextInt(8999) + 1000));
      text2.setText(null);
     } else {
      JOptionPane.showMessageDialog(null, "亲,恭喜哦~登录成功、、、", "",
        JOptionPane.WARNING_MESSAGE);// 如何自定义对话框
     }
    }
   }
  }
  if (e.getSource() == button2) {
   text1.setText("");
   text2.setText("");
   pass.setText("");
  }
  if (e.getSource() == button3) {
   form.dispose();
  }
 }

}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值