【发布时间】:2015-03-28 21:48:41
【问题描述】:
我有一个简单的自动热键宏来测试窗口是否处于活动状态。如果它处于活动状态,我想做一些事情,然后停止,直到窗口变为非活动状态,然后再次重新激活。
问题是我对窗口之前是否处于非活动状态的测试不起作用。这是我的代码:
^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
当它运行时,我得到第一个消息框,指示完成状态(一开始是假的)。但是 (!done) 不会评估为 true,并且不会触发第二个消息框 (hello)。知道这里有什么问题吗?
【问题讨论】:
标签: autohotkey