Java 中的JTextField 控件中,可以通过键盘监听事件keyPressed(KeyEvent e) 中的getKeyCode 取得普通键的键值,但是对于TAB,F1 ~F10等键,返回来的KeyCode不可见, 该如何捕捉VK_TAB, VK_F1等键?
txtX.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
int key =e.getKeyCode();
System.out.println("char - " + e.gekKeyChar()); //对于TAB键 无效
System.out.println("code - " + e.getKeyCode()); //对于TAB键 无效
}})
可以使用e.getKeyCode()方法来捕获VK_TAB, VK_F1等键的键值。对于TAB键和F1 ~ F10等键,e.getKeyChar()方法将返回空字符(char类型)。