Перейти на главную страничку сайта (список статей, файлы для скачивания)

ФОРУМ (здесь можно обсудить эту статью, а также саму программу AutoHotkey и проблемы её использования)

Проект перевода документации AutoHotkey: перечень переведённых статей и статей в работе.

Оригинал статьи в AutoHotkey.chm: "WinWaitClose", в содержании - "Window Management" - "WinWaitClose", v1.0.46.07.

Ник переводчика: YMP.

Настоящее имя переводчика: Юрий Попов.

WinWaitClose

Ждёт закрытия указанного окна.

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

Параметры

WinTitle Заголовок или часть заголовка окна (метод поиска можно задавать командой SetTitleMatchMode). Если этот и 3 других оконных параметра пустые или опущены, будет использовано последнее найденное окно. Чтобы задать окно через его класс, используйте конструкцию ahk_class ТочноеИмяКласса (можно посмотреть программой Window Spy). Чтобы использовать идентификатор процесса (PID), задайте параметр как ahk_pid %ПеременнаяСодержащаяPID%. Чтобы использовать группу окон, задайте параметр как ahk_group ИмяГруппы. Чтобы использовать идентификатор окна, задайте параметр как ahk_id %ПеременнаяСодержащаяID%. Сектор поиска можно сузить, задав несколько критериев, например, My File.txt ahk_class Notepad.
WinText Подстрока из одиночного текстового элемента окна (можно посмотреть программой Window Spy). Скрытые текстовые элементы определяются, если включено определение скрытого текста (команда DetectHiddenText).
Seconds Время ожидания в секундах (может быть выражением). По истечении этого времени ErrorLevel устанавливается в 1. Оставьте параметр пустым, чтобы ждать неограниченно долго. Значение 0 означает то же самое, что 0.5.
ExcludeTitle Окна, чей заголовок включает значение этого параметра, исключаются.
ExcludeText Окна, чей текст включает значение этого параметра, исключаются.

ErrorLevel

Равен 1, если истекло время ожидания; иначе 0.

Примечания

Если команда не обнаруживает окон, подходящих под параметры, она не будет ждать истечения заданного срока. Вместо этого ErrorLevel немедленно устанавливается в 0, и выполнение скрипта продолжается.

Когда эта команда находится в ожидании, новые потоки могут запускаться через горячие клавиши, пункты меню или таймеры.

Если другой поток изменит значение каких-то переменных, использованных в качестве параметров, команда не увидит этих изменений - она будет продолжать использовать заголовок и текст, которые содержались в переменных в момент, когда команда начала ожидание.

Заголовки и текст окон чувствительны к регистру. Скрытые окна не определяются, если только это не задано командой DetectHiddenWindows.

Пример

Run, notepad.exe
WinWait, Безымянный - Блокнот
WinWaitClose ; Ожидание закрытия окна, найденного WinWait.
MsgBox, Окно Блокнота закрыто.

Перейти на главную страничку сайта (список статей, файлы для скачивания)

© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.