Autohotkey 自动热键表达式未计算
我有一个简单的autohotkeys宏来测试窗口是否处于活动状态。如果它是活动的,我想做一些事情,但然后停止,直到窗口变为非活动状态,然后再次激活 问题是我对以前是否处于非活动状态的窗口的测试不起作用。这是我的密码:Autohotkey 自动热键表达式未计算,autohotkey,Autohotkey,我有一个简单的autohotkeys宏来测试窗口是否处于活动状态。如果它是活动的,我想做一些事情,但然后停止,直到窗口变为非活动状态,然后再次激活 问题是我对以前是否处于非活动状态的窗口的测试不起作用。这是我的密码: ^w:: ;hotkey always fires done = false SetTimer, CheckPopups, 10000 ; check every 10 seconds for annoying popup CheckPopups: if ( Wi
^w::
;hotkey always fires
done = false
SetTimer, CheckPopups, 10000 ; check every 10 seconds for annoying popup
CheckPopups:
if ( WinActive("Volume Spike - Down") )
{
;specific lines only when active window is true
msgbox (%done%)
if (!done) {
msgbox hello
done := true
}
}
IfWinNotActive Volume Spike - Down
{
done = false
msgbox Not
}
Return
运行此命令时,我会收到第一个消息框,指示“完成”的状态(开始时为false)。但是(!done)的计算结果不是true,并且第二个消息框(hello)没有被激发。知道这里出了什么问题吗?自动热键将
true
/false
-布尔表达式设想为1
/0
。如果我是你,我就不会使用前面的关键词
但是,你仍然可以,你只需要把初始化改为
done := false
(存储表达式)done=false
实际上与done:=“false”
(字符串赋值)相同。好的,你也可以把它改成
done = %false%