比如我想让用户输入字母“t”时,系统获得的信息并不是“t”,而是小键盘区的“7”。
也就是说,我先让这个Java程序运行,然后打开记事本,开始输入一串英文,这个系统将捕捉键盘的输入,
然后,if(e.getKeyCode() == KeyEvent.t) 在记事本中看到的不是t,而是数字“7”。
请问该怎么实现!?如果可以的话请高人给出一些示例代码,在下感激不尽!!
也就是说,我先让这个Java程序运行,然后打开记事本,开始输入一串英文,这个系统将捕捉键盘的输入,
然后,if(e.getKeyCode() == KeyEvent.t) 在记事本中看到的不是t,而是数字“7”。
请问该怎么实现!?如果可以的话请高人给出一些示例代码,在下感激不尽!!
import java.awt.*;
import java.awt.event.*;/**
* <p>
* Title: 键盘检测
* </p>
* <p>
* Description: 在applet使用键盘事件,检测键盘的动作。
* </p>
* <p>
* Copyright: Copyright (c) 2003
* </p>
* <p>
* Filename: KeyAd.java
* </p>
*
* @version 1.0
*/
public class KeyAD extends Applet {
String text = ""; int width, height; /**
* <br>
* 方法说明:Applet初始化,添加了一个键盘监听对象。 <br>
* 输入参数: <br>
* 返回类型:
*/
public void init() {
addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
this_keyPressed(e);
}
});
} // end init /**
* <br>
* 方法说明:获取键盘事件 <br>
* 输入参数: <br>
* 返回类型:
*/
void this_keyPressed(KeyEvent e) {
e.setKeyChar((char)(e.getKeyChar()+1)); // 强制修改事件的键盘字符
String s = "";
// 强制转换成字符型
text = s += e.getKeyChar();
System.out.println("text=" + text);
width = size().width;
height = size().height;
repaint();
} /**
* <br>
* 方法说明:绘制Applet屏幕 <br>
* 输入参数: <br>
* 返回类型:
*/
public void paint(Graphics g) {
setFont(new Font("Dialog", 1, 80));
g.drawString(text, height / 2, width / 2);
} // end paint
} // end KeyAd