2013-05-11 123 views
1

我想在Windows應用程序中捕獲按鍵,例如Fn + Pause,Fn + VolumeUp,但我無法檢測到它們的KeyCode。在java中查找多媒體密鑰的密鑰代碼

addKeyListener(new KeyAdapter() { 
     @Override 
     public void keyPressed(KeyEvent e) { 
      System.out.println(e.getKeyCode()); 
     } 
    }); 

使用此片段,它將打印0用於所有多媒體按鍵!

請提出一個合適的方法來找到keyCode,從而在Java應用程序中使用它。

+3

* 「請提出一個合適的方法查找鍵代碼。」 * JNI – 2013-05-11 07:23:57

回答

3

使用JIntellitype庫。

此API是一個Java JNI庫,它使用C++ DLL與Windows進行所有通信。 這也意味着您正在運行的平臺必須是Windows。

如果你在Linux下使用JXGrabKey

在MacOSX上使用OSSupport

0

檢查KeyEvent常量爲一些特殊鍵。 其他特殊鍵可能確實不被「識別」。

另請參閱this線程。