2013-08-14 2 views
-1

로봇을 통해 Control and A 키를 눌러 "모두 선택"하지만 keyboardListener가 입력으로 인식하지 못하게하고 싶습니다. "모두 선택"을 사용하는 다른 방법이나 두 입력 유형을 구별하는 방법이 있습니까?로봇과 사람의 키보드 입력을 구분하십시오

편집 : 정상적인 것이 아닌 JNativeHook NativeKeyboardListener를 사용하고 있습니다. 지적하고 싶습니다. 어쩌면 특별한 능력을 가지고있을 수도 있습니다. :)

+0

* * "무슨 뜻인가요?하지만 keyboardListener가 입력으로 인식하는 것을 원하지 않습니다"*? 그 목적을 이길 수 있겠습니까? 또한 Ctrl + A는 기본적으로 "press"ctrl이라는 것을 기억하십시오. "A", "A", "release"ctrl을 누르십시오. – MadProgrammer

+0

keyboardListener의 목적은 모든 인간 입력을 기록하고 기록하는 것입니다 Keylogger처럼 교육적인 목적으로 만 사용됩니다.) "모두 선택"버튼은 숨겨져있는 JFrame에 있으며, 사용자가 그 사실을 알지 못하기 때문에 입력하지 않고 사용하면됩니다. –

+1

나는 그것이 가능하다고 생각하지 않는다. 당신은 당신의 키 로거를 돌려야 만하고, ctrl + A를 누르고 키 로거를 다시 활성화해야만한다. – MadProgrammer

답변

1

해당 컨트롤에서 선택한 범위 만 설정할 수 있습니다. 이를 위해 키보드가 필요하지 않으므로 키보드 리스너가 처리하지 않습니다.

+0

그게 무슨 뜻인가? ? –

+1

어떤 컨트롤을 사용하고 있는지 모르겠지만 예를 들면 다음과 같습니다. http://docs.oracle.com/javase/7/docs/api/javax/swing/text/JTextComponent.html#selectAll%28%29하지만 질문을 잘못 이해했을 수도 있습니다. – BartoszKP

+0

완벽 할 것입니다! 그리고 JFrame에서 JTextPane에 대해이 메서드를 어떻게 호출할까요? –

0

입력을 주입 할 수 있지만 응용 프로그램 계층에서 입력을 인식하려면 입력 스택을 통해 전파해야하므로 keyboardlistener가 인식합니다.

아마도 키보드 입력을 주입하지 않고 프로그래밍 방식으로 select를 수행하는 다른 방법이있을 수 있습니다.

+0

그래, 나는 똑같이 생각했다. 나는 select all을 사용하는 다른 방법으로 지난 30 분 동안 googled했다. 그러나 다른 방법을 찾을 수 없었다. –