2013-03-28 3 views
0

사용자가 KeyTyped 메서드 내부에서 "Backspace"키를 눌렀는지 어떻게 알 수 있습니까? arg0.getKeyChar()의 값은 KeyEvent.CHAR_UNDEFINED이 아니며 항상 KeyEvent.VK_UNDEFINEDarg0.getKeyCode()은 KeyTyped 메서드 내부에 있으므로 KeyReleased/KeyPressed 메서드를 사용하고 부울을 플래그해야합니까? 어떤 방법이 먼저 발생합니까? KeyReleased 또는 KeyTyped?Java KeyListener : KeySyped에서 "Backspace"키 누름

+0

의 keyPressed가 실행된다 (아래) 키가 (최대) 놓으면 의 keyReleased이 소성 의 keyTyped 내로 단지 사용자가 입력 한 후에 유니 코드 문자를 소성하는 청취 투 성분. – Flot2011

+0

@ Flot2011 KeyTyped 이전에 KeyReleased 되었습니까? 아니면 그것이 달려 있습니까? – Justin

답변

2

KeyTyped는 시각적 표현이없는 키를 감지 할 수없는 것처럼 보입니다. 백 스페이스를 포함한다고 가정합니다. 키를 누를 때

KeyListener, keyPressed versus keyTyped

+0

그러면 getKeyChar()에서 무엇을 제공합니까? – Justin

+0

방금 ​​찾았습니다. arg0.getKeyChar()를 int로 형변환하면 숫자가 8이됩니다. 다른 컴퓨터에서도 같을까요? (Enter 키는 10이되고 ESC는 27이됩니다.이 값은 표준화되어 있습니까?) – Justin

+0

http://www.fileformat.info/info/unicode/char/0008/index.htm – Jazzepi