【问题标题】:Finding keycode of multimedia key in java在java中查找多媒体键的键码
【发布时间】:2013-05-05 21:05:08
【问题描述】:

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

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

使用这个 sn-p 它会为所有多媒体按键打印 0!

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

【问题讨论】:

  • “请提出一个合适的方法来查找 keyCode..” JNI

标签: java awt keyboard-events keylistener


【解决方案1】:

检查KeyEvent 常量中的一些 特殊键。 其他特殊键可能确实无法“识别”。

参见this 线程。

【讨论】:

    【解决方案2】:

    使用 JIntellitype 库。

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

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

    在 MacOSX 中使用 OSSupport

    【讨论】:

      猜你喜欢
      • 2011-04-11
      • 1970-01-01
      • 2016-06-02
      • 1970-01-01
      • 2012-08-03
      • 1970-01-01
      • 2012-05-14
      • 2013-08-12
      • 2017-07-07
      相关资源
      最近更新 更多