Window.Close

Window.Close ( number WndHandle,
number Method = CLOSEWND_SENDMESSAGE )
Примеры

Описание

Закрывает указанное окно на рабочем столе пользователя.

Параметры

WndHandle

(число) Целочисленное значение, представляющее указанное окно на рабочем столе пользователя. (Обычно именуется как hWnd.)

Method

(число) Каким образом закрывать окно. Выбор из:

КОНСТАНТА
CONSTANT
ЗНАЧЕНИЕ
VALUE
ОПИСАНИЕ
DESCRIPTION
CLOSEWND_SENDMESSAGE0Отправляем программе сообщение WM_CLOSE. Это тоже самое, что и клик по кнопке "Закрыть - Close" на заголовке окна. (По умолчанию)
CLOSEWND_TERMINATE1Немедленное прекращение процесса программы. При использовании этой опции, состояние глобальных данных поддерживаемых программными динамически подключаемыми библиотеками (DLL) может быть нарушено. (При выборе этой опции, приложение AutoPlay вызывает функцию Windows API "TerminateProcess" для немедленного закрытия указанной программы.)

Возврат

Ничего. Можно использовать действие Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
Смотрите также: Связанные действия

Примеры

Пример 1

Window.Close(app_handle, CLOSEWND_SENDMESSAGE);
Отправляет сообщение о закрытии программе с дескриптором окна, хранящимся в переменной "app_handle".

Пример 2

Window.Close(app_handle, CLOSEWND_TERMINATE);
Завершаем процесс программы, чей дескриптор окна хранится в переменной "app_handle".

Пример 3

-- Get the titles and window handles of all open windows.
-- Получаем заголовки и дескрипторы всех открытых окон.
windows = Window.EnumerateTitles();

-- A variable containing text in the title you want to search for.
-- Переменная, что содержит текст для поиска в заголовке.
window_name = "Notepad";

-- Loop through the table of windows.
-- Цикл for через таблицу окон.
for handle, title in pairs(windows) do

    -- Check if the window title has the target text.
    -- Проверяем имеются ли заголовки с искомым текстом.
    result = String.Find(title, window_name, 1, false);

    -- if the string was found in the title, send the window a close message.
    -- если строка была найдена в заголовке, отправляем окну сообщение о закрытии.
    if (result ~= -1) then
        Window.Close(handle, CLOSEWND_SENDMESSAGE);
    end
end
Поиск в заголовках всех открытых окон строки "Notepad" и отправляем каждой из них команду на закрытие окна.
Смотрите также: Связанные действия