我想为 Java Swing 应用程序创建一个应用程序范围的键盘快捷键。 循环遍历所有组件并在每个组件上添加快捷方式,具有焦点相关的副作用,并且似乎是一种蛮力解决方案。
谁有更清洁的解决方案?
最佳答案
对于每个窗口,使用 JComponent.registerKeyboardAction
条件为 WHEN_IN_FOCUSED_WINDOW
。或者使用:
JComponent.getInputMap(WHEN_IN_FOCUSED_WINDOW).put(keyStroke, command);
JComponent.getActionMap().put(command,action);
关于java - 应用程序范围的键盘快捷键 - Java Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/100123/