Java에서 Robot 클래스를 사용하고 텍스트를 입력하려고합니다. 불행히도 대괄호의 키 코드를 찾는 데 문제가 있습니다.이 기호는 |
이며이 기호는`입니다. KeyEvent 상수에서 찾을 수 없습니다. 타이핑하는 텍스트가 키릴 문자이고이 기호가 알파벳의 문자를 나타 내기 때문에이 문자를 사용하고 싶습니다. 미리 감사드립니다.대괄호의 키 코드는 무엇입니까
1
A
답변
5
그것은 KeyEvent
의 JavaDoc
KeyEvent
KeyEvent.VK_OPEN_BRACKET
및
KeyEvent.VK_CLOSE_BRACKET
의 JavaDoc에서 편집
입니다
의 ` 및 ~ ~가 SHIFT 수정이있을 것이다하지만, 동일한 키 코드를 생성합니다. 또한이 저수준 이벤트는 키를 누르거나 놓거나 입력 할 때 구성 요소 개체 (예 : 텍스트 필드)에 의해 생성됩니다. 미국 101 키 키보드 그래서
KeyEvent.VK_BACK_SLASH
은
| (파이프) 키 스트로크도 함정합니다.
다음 샘플을 KeyAdapter
프로젝트에 추가하여 실제로 사용하도록하십시오.
new KeyAdapter()
{
public void keyPressed(final KeyEvent e)
{
if (e.getKeyCode() == KeyEvent.VK_BACK_QUOTE)
{
e.toString();
}
if (e.getKeyCode() == KeyEvent.VK_BACK_SLASH)
{
e.toString();
}
if (e.getKeyCode() == KeyEvent.VK_OPEN_BRACKET)
{
e.toString();
}
}
}
0
일반적인 해결책은 KeyEvent.getExtendedKeyCodeForChar(int c)
입니다. 유니 코드 코드 포인트 c
에 VK_
상수가 있으면 반환됩니다. 그렇지 않으면 "고유 정수"가 리턴됩니다.
나는
참고로 ... '' 'KeyEvent.VK_BACK_QUOTE이라고 생각 : "|" * pipe * 및 "'"- * backtick *이라고합니다. –