java - 在java中查找多媒体键的键码

标签 java awt keyboard-events keylistener

我想在我的 Java 应用程序中捕获 Windows 上的按键操作,例如 Fn+Pause、Fn+VolumeUp,但我无法检测到它们的键码。

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

使用此代码段,它会为所有多媒体按键打印 0!

请建议一种合适的方法来查找 keyCode,从而在 Java 应用程序中使用它。

最佳答案

使用 JIntellitype 图书馆。

此 API 是一个 Java JNI 库,它使用 C++ DLL 来完成与 Windows 的所有通信。 这也意味着您运行的平台必须是 Windows。

如果您使用的是 Linux,请使用 JXGrabKey

在 MacOSX 中使用 OSSupport

关于java - 在java中查找多媒体键的键码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16494804/

相关文章:

java - 如何在运行 KITKAT 的设备上使用新的 Lollipop SD 卡访问 API?

java - 清除透明窗口上的 JFrame 背景

keyboard-shortcuts - 每当按住某个修饰键时,将箭头键重新映射到 JKLI

javascript - Sencha touch 中的 onkeydown

java - 我们如何在 Spring 应用程序中加载和使用两个相同名称和类型的 bean

javascript - 将 Angular JS 与 JSP 和 Servlet 集成

java - 什么是 MIDI 音库?

java - 带有字符 g.draw java 的轮廓形状

java - 小程序不显示

Python 键盘库不抑制 Linux 上的击键