Описание функции | |
WinWait |
Приостановить выполнение утилиты до появления указанного окна.
WinWait('title'[,'text'[,timeout=0]])
Параметры
title | Заголовок/дескриптор/класс окна. См. заголовки и текст окон. |
text |
[необязательный] Текст окна. |
timeout |
[необязательный] Тайм-аут в секундах. По умолчанию 0 - бесконечное ожидание. |
Возвращаемое значение
Успех: | Возвращает дескриптор указанного окна. |
Ошибка: | Возвращает 0, если выход по тайм-ауту. |
Примечания
См. также
WinActive, WinExists, WinWaitActive, WinWaitClose, WinWaitNotActive, WinWaitDelay (Опция), ProcessWait
Примеры: | Как создать кнопку? |
exect=Run('notepad.exe')||WinWait('[CLASS:Notepad]')||Sleep(3000)||WinClose('[CLASS:Notepad]') ;; запустить "Блокнот", дождаться появления указанного окна и через 3 секунды закрыть окно
exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||WinSetState(HWnd($var_h),Null,@SW_MINIMIZE) ;; запускает "Блокнот", ожидает появление и сворачивает
exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||SendKeepActive(HWnd($var_h)) <FOR> 1 <TO> 10 exect=Send('привет')||Sleep(500) <NEXT> exect=SendKeepActive(Null)||WinClose(HWnd($var_h)) ;; запустить "Блокнот" и удерживать окно блокнота активным при использовании функции Send()
exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||IsHWnd(Eval('var_h'))?_ViewValues('Это~~дескриптор~~HWND'):_ViewValues('Это~~НЕ~~дескриптор~~HWND') ;; запустить "Блокнот" и проверить дескриптор окна на валидность