如果尚未获得Caps Lock状态,并将其设置为on,我该怎么办?

Mik*_*rge 10 java toggle capslock

我想就如何打开大写锁定一个具体的例子,如果它是关闭的.

我知道如何切换密钥,我一直在使用这个:

toolkit.setLockingKeyState(KeyEvent.VK_CAPS_LOCK, Boolean.TRUE);
Run Code Online (Sandbox Code Playgroud)

这将改变键的状态,无论它是打开还是关闭.但我想确保它在应用程序开始时处于启用状态.

(最终目标是让键盘LED以某些顺序闪烁,如果我有一定的起始状态,效果会更好.)

Mic*_*zek 16

您可以getLockingKeyState用来检查当前是否设置了Caps Lock:

boolean isOn = Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK);
Run Code Online (Sandbox Code Playgroud)

但是,它是不必要的 - setLockingKeyState不切换键的状态,它设置它.如果你通过它true,无论原始状态如何,它都会将键状态设置为on:

Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_CAPS_LOCK, true);
Run Code Online (Sandbox Code Playgroud)