1

此关键事件不起作用。相同的代码正在工作,

VK_SPACE

它不适用于控制

private void jTextArea1KeyPressed(java.awt.event.KeyEvent evt) {
    if ((evt.getKeyChar() == KeyEvent.VK_CONTROL)) {
        System.out.println("CONTROL IS PRESSED");
    }
} 
4

3 回答 3

3

有一种方法java.awt.event.KeyEvent只是为了您的目的-isControlDown()

于 2012-09-04T13:27:01.307 回答
3
于 2012-09-04T13:27:41.443 回答
3

不要getKeyChar与这些VK_常量结合使用。改为使用getKeyCodegetKeyChar仅用于可打印键,这会导致在正常操作中打印字符。getKeyCode另一方面,它旨在为您提供VK_按下的键的代码(即常量),即使没有关联的字符(如 Ctrl 的情况)。

另请参阅此答案

于 2012-09-04T13:28:16.750 回答