【发布时间】:2014-01-18 06:21:31
【问题描述】:
当键盘键都正常 (a-z) 时,我处理某些按键的代码工作正常,但现在我想将默认屏幕截图键设为 F9。
if (e.getActionCommand().toUpperCase().equals(configFile.getProperty("TOGGLE_ATTACK_KEY"))){
inAttackMode = !inAttackMode;
} else if (e.getActionCommand().toUpperCase().equals(configFile.getProperty("SCREENSHOT_KEY"))){
当我按下 F9 键时,e.getActionCommand() 返回 null。注册这个密钥的代码在这里:
theDesktop.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("released " + configFile.getProperty("SCREENSHOT_KEY")), "f9ButtonRelease");
theDesktop.getActionMap().put("f9ButtonRelease", ClassKeyReleaseHandler);
感谢您对此提供的任何帮助...我尝试搜索 Google 和 SO,但没有看到任何具体内容。还尝试使用 VK_F9 进行注册,但它只使用 F9 触发(无论哪种方式,当我按下 F9 时它都会返回 null)。感谢您的帮助。
【问题讨论】:
标签: java swing awt key-bindings actionevent