3

试图模拟功能键 + 箭头,例如Fn+ Left= Home

我希望能够按住 shift 并选择文本,所以我也使用通配符 *。

*<#Left::Home

这仅在按住 shift 时才有效。如果轮班向上,则不会发生任何事情。怎么了?

4

1 回答 1

2

安德烈亚斯,

当您像以前那样定义重新映射时,原始的 Windows 快捷方式保持活动状态(不要问我为什么......)。您可以在注册表中禁用那些预定义的 Windows 热键,但更简单的方法是将它们变成hotkeys。当使用热键和发送(或发送输入)命令时,修饰键被忽略(不像你聪明的重新映射)。这意味着您将不得不“捕获”每个组合。下面我展示了长版本(与您的解决方案相比)。抱歉,但据我所知,这是唯一的方法(或者您可以使用 * 并使用 GetKeyState 测试 Shift/Ctrl/Alt 键,但这会使其更加复杂)。

#Left::Send, {Home}
+#Left::Send, +{Home}
于 2013-05-20T15:56:32.607 回答