문제

나는 한동안 찾고 있었고 모두가 Java 만 사용하는 것이 불가능하다고 생각하는 것 같습니다.

다른 관련 응용 프로그램이 Window 초점을 가지고있는 동안 내 Java 애플리케이션이 이벤트 (특히 주요 이벤트)를 듣게하는 방법이 있습니까? 내 상황에서는 Java 응용 프로그램에 초점이 맞지 않더라도 사용자가 키보드에 '일시 중지'키를 누른시기를 감지하려고합니다.

나는 어떤 사람들이 유일한 방법은 C 코드를 작성하고 JNI를 사용하는 것이라고 언급했습니다. 아무도 그것을 피하는 방법을 알고 있다면 궁금하십니까? 아니면 그렇지 않다면 적어도 C/JNI 물건에 대한 정말 좋은 튜토리얼입니까?

감사

도움이 되었습니까?

해결책

이것이 할 수 없다는 것은 내 이해입니다. 기본 수준에서 JVM은 수신 한 O/S 이벤트에 대한 이벤트 만 생성하며 초점이 맞는 경우 O/S 입력 이벤트 만받습니다.

나는 당신을 확신합니다 ~할 수 있었다 JNI를 사용하여 O/S를 트리거하여 모든 입력에 대한 이벤트를 생성하지만 이는 매우 O/S 의존적입니다.

다른 팁

내가 찾은 가장 좋은 대답은 다음과 같습니다.

"기본 키보드 및 마우스 컨트롤을 처리 할 수있는 라이브러리가 있습니다.https://github.com/kwhat/jnativehook) "

나는 그것을 둘러 볼 수있는 방법을 모른다. 나는 찾았다 이 링크는 Java의 포럼에서 링크합니다 JNI 재료를 설정하고 전역 키보드 핸들러를 만드는 방법에 대한 좋은 예를 갖습니다 (여기에 추가하기에는 너무 많음). 그것은 약간 날짜가 조금 (2005)이지만, 그 예는 당신을 시작하기에 충분히 철저하게 보입니다.

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