指定されたウィンドウがアクティブになるまで、またはアクティブでなくなるまで待ちます。
WinWaitActive WinTitle, WinText, Timeout, ExcludeTitle, ExcludeText WinWaitNotActive WinTitle, WinText, Timeout, ExcludeTitle, ExcludeText
もしこれらの項目が未設定または省略されたときは、最後に見つかったウィンドウが使用されます。そうでないときは、WinTitleに ウィンドウタイトルまたはターゲットウィンドウを識別するための他の基準、および/またはWinTextにターゲットウィンドウの単一のテキスト要素からの部分文字列(付属のWindow Spyユーティリティを使えばわかります)を指定します。
ExcludeTitleとExcludeTextはウィンドウのタイトルまたはテキストで除外するために使用します。指定の仕方はWinTitleとWinTextに似ていますが、ExcludeTitleはウィンドウのタイトル以外の基準(ウィンドウクラスやHWNDなど)を認識しません。
ウィンドウのタイトルとテキストは大文字と小文字を区別します。DetectHiddenWindows関数 と DetectHiddenText関数で変更しない限り、初期設定では非表示ウィンドウは検出されず、非表示テキストは検出されます。SetTitleMatchMode関数で変更しない限り、初期設定ではウィンドウのタイトルはその中のどこかにWinTitleまたはExcludeTitleを含んでいれば一致します。
省略した場合は、無期限に待機します。そうでなければ、指定された秒数以上待機することはありません。1秒未満の時間を待機するには、浮動小数点数を指定します。たとえば最大250ミリ秒待機するときは、0.25と指定します。
型:整数
WinWaitActiveは、条件にマッチすればアクティブなウィンドウのHWND(ユニークID)を返し、関数がタイムアウトしたときは0を返します。
WinWaitNotActiveは、アクティブなウィンドウが条件に一致しないときは1を返し、関数がタイムアウトしたときは0を返します。
アクティブウィンドウが関数の期待値を満たしている場合、関数はタイムアウトまで待ちません。その代わり、スクリプトを再開できるように、即座にリターンします。
"A"
はその時点でアクティブなウィンドウにマッチするので、WinWaitNotActive "A"
は通常無期限に待ちます。代わりに別のウィンドウがアクティブになるのを待つには、次の例のように一意のIDを指定します:
WinWaitNotActive WinExist("A")
WinWaitActive関数とWinWaitNotActive関数は、どちらも関数の開始時に一致するウィンドウがアクティブである場合、または関数が待機している間にアクティブになった場合に、最後に見つかったウィンドウを更新します。
関数が待機状態にある間、ホットキー、カスタムメニュー項目、またはタイマーによって新しいスレッドを起動することができます。
他のスレッドが、この関数のパラメータに使われていた変数の内容を変更しても、この関数にはその変更は反映されない。
WinWait、WinWaitClose、WinExist、WinActive、SetTitleMatchMode、DetectHiddenWindows