Описание функции | |
WinClose |
Закрывает указанное окно.
WinClose('title'[,'text'])
Параметры
title | Заголовок/дескриптор/класс окна. См. заголовки и текст окон. |
text |
[необязательный] Текст окна. |
Возвращаемое значение
Успех: | Возвращает 1. |
Ошибка: | Возвращает 0, если указанное окно не найдено. |
Примечания
Эта функция отправляет окну "close message", результат зависит от окна (запрос на сохранение данных и т.п.). Чтобы принудительно закрыть окно, используйте функцию WinKill(). Если несколько окон соответствуют критерию, будет закрыто самое недавнее активное окно.См. также
WinActivate, WinExists, WinKill, WinSetState, WinTitleMatchMode (Опция), ProcessClose, WinMove
Примеры: | Как создать кнопку? |
exect=WinClose('[CLASS:Notepad]') ;; закрывает окно "Блокнота"
exect=Run('notepad.exe')||WinWait('[CLASS:Notepad]')||Sleep(3000)||WinClose('[CLASS:Notepad]') ;; запустить "Блокнот", дождаться появления указанного окна и через 3 секунды закрыть окно
exect=$var_handle=WinGetHandle('Безымянный~~—~~Блокнот')||WinClose(Eval('var_handle')) ;; определить дескриптор окна по его заголовку и закрыть
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=$var_handle=WinClose('[CLASS:TTOTAL_CMD]')||WinWaitClose(Eval('var_handle')) infbx=||TC~~Закрыт||3||150||40 ;; закрытие Total Commander с ожиданием закрытия окна