2017-05-13 1 views
1

텍스트 필드에서 특정 키를 눌렀을 때를 감지하려고합니다.소문자를 버리는 Java KeyListener

if((event.getKeyCode()>=KeyEvent.VK_A && event.getKeyCode()<=KeyEvent.VK_Z)){//65 to 90 
    System.out.println("pass"); 
    event.consume(); 
} 

어떤 이유로이 명령은 "A"와 같은 대문자 만 감지하고 중지하지만 "a"는 중지하지 않습니다. 어떻게이 프로그램을 소문자로 만들지 않을까요?

답변

1

인 getKeyCode() ASCII 코드를 반환하는 일, 그리고 당신은 당신이 KEY_TYPED 이벤트를 사용하는 경우 문자를 반환) 즉, 65 (90)

getKeyChar의 (에, Z 코드에를 필터링하고 있습니다. 이것은 'A'에서 'Z'까지 및 'a'에서 'z'까지를 탐지하는데 사용될 수 있습니다. 즉

if (Character.isAlphabetic(event.getKeyChar())) { 
    // .... 
} 
+0

응답 해 주셔서 감사합니다하지만 난 소문자뿐만 아니라 대문자로 중지하기 위해 노력하고있어하지만 내가 "A"(소문자)가이 fnction – Jack

+0

@Jack의 사과 오해를 통과하지 않습니다를 누릅니다. 업데이트 중 ... – Adam

+0

감사합니다. 위대한 작품입니다. – Jack