如何将变量传递给 WinExist?
How to pass a variable to WinExist?
我需要做
if WinExist(%window%) {...}
但是这不起作用
%window%
之前设置为等于 %3%
,这是一个命令行参数,它应该只是字符串类型,将 AHK 脚本指向感兴趣的 window。
我尝试用 %3%
替换 %window%
但是里面的代码从来没有得到 运行。为什么?
If WinExist(window)
是一个expression,其参数中的任何变量名都不应包含在百分号中。
相比之下,文字字符串应该用双引号引起来:
If WinExist("Untitled - Notepad")
由于 WinExist() 接受 window 标题的字符串参数,因此您无需将变量包含在 %
.
中
如果您将 window
设置为第三个命令参数的值,则以下代码应该有效。
window = %3%
if WinExist(window)
{
Msgbox, Exists.
}
else
{
Msgbox, Does not exist.
}
注意:window
或%3%
必须与window标题完全匹配,否则您必须使用SetTitleMatchMode, 2
(参见SetTitleMatchMode)。
我需要做
if WinExist(%window%) {...}
但是这不起作用
%window%
之前设置为等于 %3%
,这是一个命令行参数,它应该只是字符串类型,将 AHK 脚本指向感兴趣的 window。
我尝试用 %3%
替换 %window%
但是里面的代码从来没有得到 运行。为什么?
If WinExist(window)
是一个expression,其参数中的任何变量名都不应包含在百分号中。
相比之下,文字字符串应该用双引号引起来:
If WinExist("Untitled - Notepad")
由于 WinExist() 接受 window 标题的字符串参数,因此您无需将变量包含在 %
.
如果您将 window
设置为第三个命令参数的值,则以下代码应该有效。
window = %3%
if WinExist(window)
{
Msgbox, Exists.
}
else
{
Msgbox, Does not exist.
}
注意:window
或%3%
必须与window标题完全匹配,否则您必须使用SetTitleMatchMode, 2
(参见SetTitleMatchMode)。