键盘监听事件

package zzDemo;

import java.awt.Button;
import java.awt.Frame;
import java.awt.Label;
import java.awt.TextField;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class QQlogin {

    public static void main(String[] args) {
        Frame f = new Frame();
        f.setSize(300, 200);// 设置窗体尺寸
        f.setLocation(500, 200);
        f.setLayout(null);// 清空窗体样式
        f.setResizable(false);// 禁止更改窗体字体大小(显示比例)
        f.setIconImage(Toolkit.getDefaultToolkit().getImage("img/qq_3d.png"));
        // f.setResizable(true);
        f.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                f.dispose();// 监听关闭
            }

            @Override
            public void windowClosed(WindowEvent e) {
                //System.exit(0);
            }
        });
        // 账号标签:
        Label name = new Label("账号");
        name.setSize(50, 30);
        name.setLocation(30, 50);
        f.add(name);

        // 密码标签
        Label pwd = new Label("密码:");
        pwd.setSize(50, 30);
        pwd.setLocation(30, 80);
        f.add(pwd);

        // 账号文本框
        TextField zh = new TextField();
        zh.setSize(150, 20);
        zh.setLocation(80, 55);
        // 添加键盘输入的监听事件,设置文本框只能输入数字
        zh.addKeyListener(new KeyListener() {

            @SuppressWarnings("static-access")
            @Override
            public void keyTyped(KeyEvent e) {//点击时
                int key=e.getKeyChar();
                if(key>=e.VK_0 && key<=e.VK_9){

                }else{
                    e.consume();//将输入内容从内存中消除(输入不进去)
                }

            }

            @Override
            public void keyReleased(KeyEvent e) {//释放时
                // TODO Auto-generated method stub

            }

            @Override
            public void keyPressed(KeyEvent e) {//释放后
                // TODO Auto-generated method stub

            }
        });
        f.add(zh);

        // 密码框
        TextField mm = new TextField();
        mm.setSize(150, 20);
        mm.setLocation(80, 85);
        mm.setEchoChar('*');// 设置密码不可见
        f.add(mm);

        // 登录按钮
        Button login = new Button();
        login.setLabel("登录");
        login.setSize(100, 30);
        login.setLocation(30, 130);
        // 登录按钮点击事件
        login.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent arg0) {
                String t1=zh.getText();//获取账号信息
                String t2=mm.getText();//获取密码信息
                if(t1.equals("112233")&&t2.equals("1111")){
                    System.out.println("登录成功!即将跳转至QQ主页……");
                    f.dispose();//关闭登录界面
                    new Main();
                }else if(t1.equals("112233") && !t2.equals("1111")){
                    System.out.println("密码错误");
                }else if(t1.equals("")){
                    System.out.println("账号不能为空");
                }else if(t2.equals("")){
                    System.out.println("密码不能为空");
                }else{
                    System.out.println("账号或密码错误");
                }

            }
        });
        f.add(login);

        // 注册按钮
        Button reg = new Button("注册");
        reg.setSize(100, 30);
        reg.setLocation(140, 130);
        f.add(reg);

        f.setVisible(true);
        f.setResizable(false);//不允许用户调整窗口大小

    }

}
package zzDemo;

import java.awt.Frame;

public class Main {
    public Main(){
        Frame f=new Frame();
        f.setSize(500, 800);
        f.setLocation(100, 50);
        f.setVisible(true);
    }


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值