游戏键盘上宏键的关键代码是什么?

时间:2014-12-01 02:17:58

标签: java keyboard-events keyevent

我正在寻找游戏键盘上的G1-G18微距键的关键代码,即Corsair K90键盘或罗技游戏键盘。 我想将全局键侦听器放在C ++中的那些键集上。

G1-G18不属于标准多媒体密钥代码列表。

Java中的测试代码:

public void keyTyped(KeyEvent e){
 System.out.println("Keycode pressed: "+e.getKeyCode());

}

当我按任意G1-G18微距键时,这将永远不会发生关键事件。我希望能够从这些键中获取关键事件。

1 个答案:

答案 0 :(得分:2)

宏键通常是发送到键盘驱动程序的专有键,用于执行管理软件本身硬编码的操作。

因此,系统实际上并不处理任何这些事件。

如果您需要与宏键接口,请查找制造商的SDK或标题包含。它们随管理实用程序一起发货并不罕见;查看实用程序应用程序所在的目录并检查C / C ++头文件。但是,您需要编写JNI绑定或使用JNA以便将它们与Java一起使用。


如果不直接与驱动程序连接,那么你最好使用这些密钥将它们设置为运行一个特定的宏序列,系统分派给Java,并拥有一个您的Java程序中针对该特定序列的反应。这是一个黑客,是的,但这些密钥并不打算以这种方式使用(通常)。


将这些密钥实现为joystick interfaces并非闻所未闻,因此检查它们是否以这种方式发送可能是值得的。如果是,那么这可能就是你想要与它们交互的方式。