Finding keycode of multimedia key in java

2019-06-06 14:39发布

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.

2条回答
三岁会撩人
2楼-- · 2019-06-06 15:08

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

查看更多
Summer. ? 凉城
3楼-- · 2019-06-06 15:16

Check the KeyEvent constants for some special keys. Other special keys might indeed not be "recognized".

See this thread as well.

查看更多
登录 后发表回答