Autohotkey 使用自动热键禁用修改器的所有组合
使用Autohotkey 使用自动热键禁用修改器的所有组合,autohotkey,Autohotkey,使用自动热键脚本 LWin:: return 左窗口键可以完全禁用。不仅简单的左窗口点击被禁用,而且包括左窗口键在内的任何其他组合都无效,因为未按下左窗口键。 例如:LWin+E,它通常会打开一个浏览器窗口,只会发送一个“E” 然而,一旦定义了使用左窗口键的新映射,所有剩余的左窗口键绑定都将返回活动状态。例如,使用脚本: LWin:: return LWin & a:: Send foo return LWin+a将打印“foo”左窗口单独使用不会起任何作用。但是,神奇的是,左窗
自动热键
脚本
LWin::
return
左窗口
键可以完全禁用。不仅简单的左窗口
点击被禁用,而且包括左窗口
键在内的任何其他组合都无效,因为未按下左窗口
键。
例如:LWin+E
,它通常会打开一个浏览器窗口,只会发送一个“E
”
然而,一旦定义了使用左窗口键的新映射,所有剩余的左窗口
键绑定都将返回活动状态。例如,使用脚本:
LWin::
return
LWin & a::
Send foo
return
LWin+a
将打印“foo
”<代码>左窗口单独使用不会起任何作用。但是,神奇的是,左窗口+E
将打开一个资源管理器窗口
我如何禁用修饰符(如
LWin
,RWin
,LAlt
,RAlt
,LCtrl
,RCtrl
),以便没有任何键绑定(但我明确定义的键绑定)运行?指定要禁用的每个LWin
组合
LWin::
LWin & e:: ; this combinations is disabled
return
LWin & a::
tooltip, foo
return
除非禁用它,否则其他默认组合仍将有效
如果你不愿意写每一个组合,你可以用不同的方式来写。
因为您现在使用的是Send
,所以它的可靠性稍差一些
global LWin_g := 0
SetTimer , checkLWin , 25
return
checkLWin:
if( GetKeyState( "LWin" , "P") )
LWin_g := 1
else
LWin_g := 0
return
$e::
if( LWin_g )
{
tooltip, action
}
else
{
Send ,e
}
return
LWin::
return
这就是我害怕的。很遗憾,太好了!你的解决方案太棒了!