【发布时间】:2011-08-17 22:50:00
【问题描述】:
有没有办法打开/关闭 Num、Caps 和 Scroll Lock 灯?这只是为了好玩,我的想法是做一些像迪斯科这样的事情。
【问题讨论】:
-
什么操作系统?据我所知,只有特定于操作系统的方法。
有没有办法打开/关闭 Num、Caps 和 Scroll Lock 灯?这只是为了好玩,我的想法是做一些像迪斯科这样的事情。
【问题讨论】:
试试
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, true);
设置大写锁定。
Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, false);
设置大写锁定关闭。
和
boolean isCapsLockOn = Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK);
获取当前状态。
使用KeyEvent.VK_NUM_LOCK 进行数字锁定。
我已经在 Windows 上对此进行了测试。我不确定其他操作系统,但我认为它会起作用。
【讨论】:
可能通过 JNI 和一个 c 方法。在这里查看一些讨论:
【讨论】:
我认为你不能直接设置 Caps/Scroll lock 的灯独立于它们自己的激活。
您只能通过编写自己的键盘驱动程序来实现这种行为(或者最终浏览网页以查找可能已经开发用于实现这种行为的驱动程序),但不推荐这样做,并且超出了java的边界。
此外,此问题与 Way to turn on keyboard's caps-lock light without actually turning on caps-lock? 类似,尽管在此其他问题中该行为是在 C# 中设计的。
但是,问题、不可能以及解决方法是相同的。
【讨论】: