跳到正文

Windows Keyboard Fixes – Fixes sticky keys

作者:JohnBaccarat

游玩时禁用粘滞键快捷键,让 Windows 键也能用于游戏。

收藏

介绍

介绍由机器翻译自 Modrinth 原页面,仅供参考。

Windows Keyboard Fixes 会在 Minecraft 运行时禁用粘滞键弹窗;当按键绑定界面打开、没有界面打开或你正在操控角色时,也会阻止 Windows 键打开 Windows 开始屏幕,让它可以用于游戏操作。如果你已经禁用了粘滞键快捷键设置,这个模组就不会更改该设置。

常见问题

问:这是怎么实现的?

粘滞键:在标题界面或游戏加载完成后,模组会通过 Windows API 设置一个系统级标志,以禁用粘滞键快捷键设置。关闭游戏时,该设置会恢复原状。

Windows 键:我基本上使用了一个低级 Windows 键盘钩子,让除 Windows 键以外的所有按键都能正常传递。只有在打开非按键绑定界面的 GUI 时,Windows 键才会正常传递。

问:为什么要在整个系统范围内禁用粘滞键?

因为即使是 Microsoft 自己的文档也建议这么做。据我所知,没有其他办法;我试过的另外几款游戏也都是在整个系统范围内禁用它。

问:如果游戏崩溃,粘滞键设置会怎样?如果我同时运行多个带有此模组的游戏实例呢?

模组会将信息写入 Windows 注册表(HKEY_CURRENT_USER\SOFTWARE\Minecraft\Sticky Keys),以记录关闭游戏时应将设置恢复为何值,以及当前有哪些带有此模组的进程正在运行。最先启动的实例会更改粘滞键设置,最后退出的实例会将其恢复。

如果游戏崩溃,还有一个休眠线程会在 Java VM 关闭时执行,以恢复该设置。通过任务管理器结束 Java 进程时,也会执行此操作。

不过,如果崩溃特别严重(可能会导致整个 VM 崩溃,但我觉得这种情况不常见),或者发生停电,那么下次启动并关闭带有此模组的 Minecraft 时,设置就会恢复。

问:既然可以直接更改粘滞键设置,模组的一半功能是不是有点多余?

是的。不过有些人(包括我)会习惯性地直接按“否”,之后总是忘记更改设置。

问:使用 Windows 键的快捷键会怎样?

如果 Windows 键没有传递到整个系统,大多数这类快捷键都无法使用。不过,有些快捷键似乎深深嵌入了 Windows,即使如此仍然可以使用,例如 Win+L 锁定桌面。

问:可以在整合包中使用吗?

可以。

常见问题

Windows Keyboard Fixes – Fixes sticky keys 支持哪些 Minecraft 版本?

Windows Keyboard Fixes – Fixes sticky keys 支持 Minecraft Java 版 1.7.10–1.20.4,共 48 个版本,可用的加载器:Fabric / Forge。下载时注意选择和你游戏版本一致的文件。

Windows Keyboard Fixes – Fixes sticky keys 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分

JohnBaccarat 的其他作品

查看全部 →