WinWait

AutoHotKey

WinWait

等到指定的窗口出现.

WinWait [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText]

参数

WinTitle

窗口标题或识别目标窗口的其他条件.请参阅 WinTitle.

WinTitle 只有在 WinText, ExcludeTitleExcludeText 都存在时才能为空.

WinText

如果使用此参数, 那么它必须是目标窗口中单个文本元素的子字符串 (和内置的 Window Spy 工具显示的一样). 当 DetectHiddenText 的设置为 ON 时, 那么会检测到隐藏文本元素.

超时前等待的秒数. 超时后设置 ErrorLevel 为 1. 留空表示无限期等待. 指定 0 等同于指定 0.5. 此参数可以为 表达式.

ExcludeTitle

标题中含有此参数值的窗口将被排除.

ExcludeText

文本中含有此参数值的窗口将被排除.

ErrorLevel

命令超时后 ErrorLevel 被置为 1, 否则为 0.

备注

当匹配窗口出现后, 此命令将不再等待 Seconds 到期. 相反地, 它会立即设置 ErrorLevel 为 0, 更新 上次找到的窗口 并让脚本继续执行.

当此命令处于等待状态时, 可以通过 热键, 自定义菜单项计时器 启动新的 线程.

如果其他 线程 改变了在此命令参数中使用的任何变量内容, 此命令会无视这些变化, 它会继续使用在开始等待时变量中原始的标题和文本.

窗口标题和文本是区分大小写的. 只有在打开 DetectHiddenWindows 设置时,才能检测到隐藏窗口.

相关

WinWaitActive, WinWaitClose, IfWinExist, IfWinActive, Process, SetTitleMatchMode, DetectHiddenWindows

示例

Run, notepad.exe
WinWait, Untitled - Notepad, , 3
if ErrorLevel
{
    MsgBox, WinWait timed out.
    return
}
else
    WinMinimize  ; 最小化 WinWait 找到的窗口.