在我的项目中,如何键盘大写锁定状态。我已经提到了这个问题How can I get the Caps Lock state, and set it to on, if it isn't already?。但我在javafx得到解决方案。请给我解决方案。我也是这个网站的参考https://community.oracle.com/thread/2415027?tstart=0
答案 0 :(得分:2)
您需要此导入:
import java.awt.Toolkit;
如果你想要它,无论如何,只需打开它:
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, true);
如果您想首先检查它是否已关闭,请将其打开:
if (!Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK)) {
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, true);
}
最后,如果您想在两种状态之间切换:
if (Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK)) {
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, false);
} else {
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, true);
}
答案 1 :(得分:1)
我认为不可能直接在JavaFX 8中查询capslock / numlock状态.Robert的解决方案使用AWT Toolkit,它不是JavaFX,但应该适合你。您可能希望create a feature request in the JavaFX issue tracker锁定密钥状态跟踪。