我在 Sony VAIO VPC-F23BFX 笔记本电脑上使用 Windows 7 Home Premium。
问题是只能使用 Shift 键关闭大写锁定键。
在控制面板的区域设置中,无论我将其设置为使用大写锁定键还是 Shift 键关闭,它始终需要 Shift 键。
我检查了一下,此选项的注册表值已正确保存。
我还测试了此实用程序生成的扫描码为:
OnKeyDown, Key code=20, Control keys=, Key name CAPS LOCK
OnKeyup, Key code=20, Control keys=, Key name CAPS LOCK
第一次按下 Caps Lock 键时(它会打开);并且:
OnKeyup, Key code=20, Control keys=, Key name CAPS LOCK
第二次按下时(它不会关闭)。
如果我随后按下 shift,它会生成:
OnKeyDown, Key code=16, Control keys=Shift{Left}, Key name SHIFT
OnKeyDown, Key code=20, Control keys=Shift{Left}, Key name CAPS LOCK
OnKeyup, Key code=20, Control keys=Shift{Left}, Key name CAPS LOCK
OnKeyup, Key code=16, Control keys=, Key name SHIFT
也许有些程序正在干扰键盘事件?(我没有使用 AutoHotkey 或类似程序)。
答案1
经过一番调查,我找到了罪魁祸首:我一直在使用禁用死键的自定义键盘布局,而且显然它还强制使用 Shift 键来关闭大写锁定(有些人称之为 ShiftLock)。
我之前曾尝试切换到默认布局,但似乎不起作用,现在我意识到这可能是因为我在现有的记事本窗口上进行了测试,而不是打开一个新窗口。
解决方案:我下载了莫斯科国立科学图书馆并基于该布局创建了新的布局,但未启用 ShiftLock。
答案2
您是否尝试过连接其他键盘并查看结果是否相同?我想也许这种行为可能是基于硬件的。
有趣的是,用户描述的行为与我很久以前使用的手动打字机的行为相同......
答案3
我不知道为什么会发生这种情况。但我可以用这个解决方法来解决这个问题:
- 控制面板 > 区域和语言
- 键盘和语言选项卡
- 更换键盘...
- 高级按键设置
- 选择“按 SHIFT 键”关闭 Caps Lock
- 申请
- 现在按下 SHIFT 键。大写字母现在应该消失了。
- 再次选择“按 CAPS LOCK 键”以关闭 Caps Lock。
- 申请
答案4
去
Control Panel > Regional and Language Options > Keyboards & Languages > Change Keyboard > Advanced Key Settings
。您将在那里找到关闭的设置
Caps Lock with the SHIFT key
,因为它应该是默认的。
并打开Press the CAPS LOCK key
。如果您找不到此设置,请使用虚拟键盘或使用类似大写锁定。