I want to capture key presses on Windows like Fn+Pause, Fn+VolumeUp in my Java Application but I am unable to detect their KeyCodes.
addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyCode());
}
});
Using this snippet it prints 0 for all the Multimedia Key Presses !
Kindly suggest a suitable method for finding the keyCode and thereby utilizing it in Java Application.
Use the JIntellitype library.
This API is a Java JNI library that uses a C++ DLL to do all the communication with Windows. That also means the platform on which you are running must be Windows.
If you are in Linux use JXGrabKey
In MacOSX use OSSupport
Check the
KeyEvent
constants for some special keys. Other special keys might indeed not be "recognized".See this thread as well.