문제

This key event is not working. The same code is working for,

VK_SPACE

Its not working for control

private void jTextArea1KeyPressed(java.awt.event.KeyEvent evt) {
    if ((evt.getKeyChar() == KeyEvent.VK_CONTROL)) {
        System.out.println("CONTROL IS PRESSED");
    }
} 
도움이 되었습니까?

해결책

Don't use getKeyChar in combination with those VK_ constants. Use getKeyCode instead. getKeyChar is for printable keys only, which result in a character being printed in normal operations. getKeyCode, on the other hand, is intended to give you the code (i.e. the VK_ constant) of the key pressed, even if there is no associated character (as in the case of Ctrl).

See also this answer.

다른 팁

There is a method on the java.awt.event.KeyEvent just for your purpose - isControlDown()

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top