Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Autohotkey 自动热键表达式未计算_Autohotkey - Fatal编程技术网

Autohotkey 自动热键表达式未计算

Autohotkey 自动热键表达式未计算,autohotkey,Autohotkey,我有一个简单的autohotkeys宏来测试窗口是否处于活动状态。如果它是活动的,我想做一些事情,但然后停止,直到窗口变为非活动状态,然后再次激活 问题是我对以前是否处于非活动状态的窗口的测试不起作用。这是我的密码: ^w:: ;hotkey always fires done = false SetTimer, CheckPopups, 10000 ; check every 10 seconds for annoying popup CheckPopups: if ( Wi

我有一个简单的autohotkeys宏来测试窗口是否处于活动状态。如果它是活动的,我想做一些事情,但然后停止,直到窗口变为非活动状态,然后再次激活

问题是我对以前是否处于非活动状态的窗口的测试不起作用。这是我的密码:

^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%