好吧,在此之前被标记为可能重复,我已经尝试了以下代码:
Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK)
Run Code Online (Sandbox Code Playgroud)
它总是对我不利[见下文].有人可以确认这是否应该有效,我是在滥用它,或者它是否已被破坏?如果它实际上已经坏了,有没有人有更好的使用方法?
编辑:
好吧,刚刚发现了更多的东西.它似乎只是返回我的程序启动时的状态.如果我用它启动程序,它会打开,反之亦然.这是我的代码:
while (true) {
boolean isOn = Toolkit.getDefaultToolkit().getLockingKeyState(
KeyEvent.VK_CAPS_LOCK);
System.out.println("Caps lock is now: " + (isOn ? "ON" : "off"));
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
}
Run Code Online (Sandbox Code Playgroud)
而这总是打印出它开始的任何东西
(例如,如果我开始大写锁定,即使我立即将其关闭,它也会打印出来:
大写锁定现在是:开
大写锁定现在是:开
大写锁定现在是:开
大写锁定现在是:开
等等,如果我从它开始,它将打印出来,无论如何)
| 归档时间: |
|
| 查看次数: |
4359 次 |
| 最近记录: |