java中的键盘事件

1.问题

实现软件序列号的输入,当文本框获得输入焦点后,用户敲击键盘将使得当前文本框触发KeyEvent事件。并且希望能够在另一个文本区域内显示文本框内的内容。

2.方法

使用KeyListener接口处理键盘事件有以下3个方法:

public void KeyPressed(KeyEvent e)

public void Typed(KeyEvent e)

public void KeyReleased(KeyEvent e)

代码清单1

package org.example;
import java.awt.event.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusListener;
import java.awt.event.KeyListener;

public class PoliceListen implements ActionListener {

       Win view;
    public void setView(Win view) {

        this.view=view;
    }
    public void actionPerformed(ActionEvent e) {
        int n=0;
        String str[]= new String[3];
        for(int i=0;i<3;i++) {
            str[i]=view.text[i].getText();
        }
        int a[]=new int[3];
        int i=0;
        for(String s:str) {
            if(!s.isEmpty()) {
                try{

                    n=Integer.parseInt(s);
                    a[i]=n;
                    i++;
                }
                catch(Exception exp) {
                    view.area.append("璇疯緭鍏ユ暟瀛?");
                }
            }
        }
        for(int c:a) {
            view.area.append(c+"\n");
        }
    }
}

代码清单2

package org.example;
import javax.swing.*;
import java.awt.*;
public class Win extends JFrame {
    JTextField text[]=new JTextField[3];
    Police police;
    PoliceListen listener;
    JTextArea area;
    JButton b;
    Win(){
        setLayout(new FlowLayout());
        police=new Police();
        listener=new PoliceListen();
        listener.setView(this);
        for(int i=0;i<3;i++){
            text[i]=new JTextField(7);
            text[i].addKeyListener(police);
            text[i].addFocusListener(police);
            text[i].addActionListener(listener);
            add(text[i]);

        }
        b=new JButton("确定");
        b.addActionListener(listener);
        add(b);
        area=new JTextArea(6,12);
        add(new JScrollPane(area));
        text[0].requestFocusInWindow();
        setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

代码清单3

 

package org.example;
import java.awt.event.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusListener;
import java.awt.event.KeyListener;
public class PoliceListen implements ActionListener {
       Win view;
    public void setView(Win view) {
        this.view=view;
    }
    public void actionPerformed(ActionEvent e) {
        int n=0;
        String str[]= new String[3];
        for(int i=0;i<3;i++) {
            str[i]=view.text[i].getText();
        }
        int a[]=new int[3];
        int i=0;
        for(String s:str) {
            if(!s.isEmpty()) {
                try{
                    n=Integer.parseInt(s);
                    a[i]=n;
                    i++;
                }
                catch(Exception exp) {
                    view.area.append("璇疯緭鍏ユ暟瀛?");
                }
            }
        }
        for(int c:a) {
            view.area.append(c+"\n");
        }
    }
}

代码清单4

package org.example;
public class leixiaohong {
    public static void main(String args[]){
        Win win=new Win();
        win.setTitle("输入序列号");
        win.setBounds(10,10,460,360);
    }
}

3.结语

在这个代码中需要去监听文本区域,在定义Listener要注意创造一个类去重写方法,才能够实现监听,文本也要安装监听器。

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java后台键盘事件监听,可以通过使用KeyListener接口来实现。KeyListener接口是一个事件侦听器接口,它定义了三个方法用于监听键盘事件。 首先,需要创建一个实现KeyListener接口的类。在该类,需要实现keyPressed()、keyReleased()和keyTyped()这三个方法。keyPressed()方法在按下键盘上的任意一个键时被调用,keyReleased()方法在释放键盘上的任意一个键时被调用,keyTyped()方法在按下可视按键时被调用。 然后,在使用KeyListener接口的组件上添加键盘事件监听器。可以使用addComponentListener()或者addKeyListener()方法来添加事件监听器。在其,需要将实现了KeyListener接口的类的实例作为参数传递给addComponentListener()或addKeyListener()方法。 当用户在该组件上进行键盘操作时,就会触发相应的事件,并调用对应的方法。可以在这些方法编写相应的逻辑来处理键盘事件。例如,可以在keyPressed()方法检测用户是否按下了某个特定键,如果是的话,就执行相应的操作。 示例代码如下所示: ```java import java.awt.event.KeyEvent; import java.awt.event.KeyListener; public class MyKeyListener implements KeyListener { public void keyPressed(KeyEvent e) { // 按下键盘时的操作 } public void keyReleased(KeyEvent e) { // 释放键盘时的操作 } public void keyTyped(KeyEvent e) { // 输入可视按键时的操作 } } ``` 然后,在需要监听键盘事件的组件上添加事件监听器: ```java import javax.swing.JFrame; public class Main { public static void main(String[] args) { JFrame frame = new JFrame(); frame.addKeyListener(new MyKeyListener()); // 添加键盘事件监听器 frame.setVisible(true); } } ``` 以上就是在Java后台实现键盘事件监听的基本方法。通过实现KeyListener接口并添加事件监听器,可以方便地监听和处理用户的键盘操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值