我正在寻找游戏键盘上的G1-G18微距键的关键代码,即Corsair K90键盘或罗技游戏键盘。 我想将全局键侦听器放在C ++中的那些键集上。
G1-G18不属于标准多媒体密钥代码列表。
Java中的测试代码:
public void keyTyped(KeyEvent e){
System.out.println("Keycode pressed: "+e.getKeyCode());
}
当我按任意G1-G18微距键时,这将永远不会发生关键事件。我希望能够从这些键中获取关键事件。
答案 0 :(得分:2)
宏键通常是发送到键盘驱动程序的专有键,用于执行管理软件本身硬编码的操作。
因此,系统实际上并不处理任何这些事件。
如果您需要与宏键接口,请查找制造商的SDK或标题包含。它们随管理实用程序一起发货并不罕见;查看实用程序应用程序所在的目录并检查C / C ++头文件。但是,您需要编写JNI绑定或使用JNA以便将它们与Java一起使用。
如果不直接与驱动程序连接,那么你最好使用这些密钥将它们设置为运行一个特定的宏序列,系统将分派给Java,并拥有一个您的Java程序中针对该特定序列的反应。这是一个黑客,是的,但这些密钥并不打算以这种方式使用(通常)。
将这些密钥实现为joystick interfaces并非闻所未闻,因此检查它们是否以这种方式发送可能是值得的。如果是,那么这可能就是你想要与它们交互的方式。