我正在尝试编写一个小模块,该模块允许用户使用NativeKeyListener
通过其他键(键映射)输入键。映射功能可以正常工作,但输出始终具有2个键值(一个是您按下的键,一个是映射键)。我只想输入映射键值。
这是我的代码:
public void nativeKeyPressed(NativeKeyEvent e) {
String keyText = NativeKeyEvent.getKeyText(e.getKeyCode());
if (keyText.equals("B")) {
try {
robot = new Robot();
robot.setAutoDelay(0);
robot.keyPress(103);
} catch (AWTException ex) {
ex.printStackTrace();
}
} else if (keyText.equals("N")) {
try {
robot = new Robot();
robot.setAutoDelay(0);
robot.keyPress(104);
} catch (AWTException ex) {
ex.printStackTrace();
}
}
现实输出:
当我按“ B”时:-> b7。
当我按“ N”时。 -> n8。
预期输出:
当我按“ B”时:-> 7。
当我按“ N”时。 -> 8。