Автор Тема: Ожидание закрытия окна  (Прочитано 527 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн mv6677 [?]

  • Новичок
  • *
  • Сообщений: 69
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Ожидание закрытия окна
« Создано: Февраль 05, 2018, 22:30:50 »
Версия AutoIt: 3.3.14.2

Описание:
Добрый вечер.
Подскажите, если кто знает - как дождаться закрытия окна, у которого в Title - встречается слово "system32"      ?   
(Иными словами событие здесь - это закрытие окна.  Как только это окно закроется - должно появиться сообщение "Окно закрылось" )
(А если такого окна на момент запуска - нет на экране - то скрипт ничего не предпринимает. А когда данное окно появится - то скрипт начинает ожидать его закрытия - чтобы при закрытии выдать сообщение.)

Примечания:

Русское сообщество AutoIt

Ожидание закрытия окна
« Отправлен: Февраль 05, 2018, 22:30:50 »

Оффлайн Tempo [?]

  • Продвинутый
  • ***
  • Сообщений: 403
  • Репутация: 92
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Ожидание закрытия окна
« Ответ #1, Отправлен: Февраль 05, 2018, 22:57:06 »
Код: AutoIt [Выделить]
#include <MsgBoxConstants.au3>
Opt("WinTitleMatchMode", -2)

While Sleep(10)
    If WinWait("system32") Then
        WinWaitClose("system32")
        MsgBox($MB_ICONINFORMATION + $MB_TOPMOST, "Пример", "Окно закрылось")
    EndIf
WEnd


Оффлайн Astel064 [?]

  • Осваивающий
  • **
  • Сообщений: 258
  • Репутация: 44
  • Пол: Мужской
  • Помог мой пост, ставь +!
    • Astel064
    • Награды
  • Версия AutoIt: 3.3.6.1
Re: Ожидание закрытия окна
« Ответ #2, Отправлен: Февраль 05, 2018, 23:01:47 »
mv6677  [?]
Цитировать
Подскажите, если кто знает - как дождаться закрытия окна, у которого в Title - встречается слово "system32"      ?    (Иными словами событие здесь - это закрытие окна.  Как только это окно закроется - должно появиться сообщение "Окно закрылось" )(А если такого окна на момент запуска - нет на экране - то скрипт ничего не предпринимает. А когда данное окно появится - то скрипт начинает ожидать его закрытия - чтобы при закрытии выдать сообщение.)

Несмотря на ответ выше, думаю, что каждая мысль интересна...

Код: AutoIt [Выделить]
Local $hWnd
$hWnd = WinGetHandle("[REGEXPTITLE:(.*?)(s|S)(y|Y)(s|S)(t|T)(e|E)(m|M)32(.*?)]")
    If @Error Then
    ; Окно не найдено при запуске: следующие 2 строки можно заменить, чтобы добиться, чтобы "скрипт ничего не делал? это как?"
    MsgBox(16,0,"Окно не найдено")
    Exitt 1
    EndIF

; Выполняется бесконечный цикл. Если окно закроется, то цикл прервется (продолжится работа скрипта после "Wend"). Внутри цикла выполняется проверка: существует-ли окно каждые 100 мс. (1/10 сек.)
While WinExists($hWnd)
Sleep(100)
Wend

MsgBox(0,0,"Окно закрылось")
Exit 0
 


Оффлайн mv6677 [?]

  • Новичок
  • *
  • Сообщений: 69

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Ожидание закрытия окна
« Ответ #3, Отправлен: Февраль 05, 2018, 23:09:23 »
Спасибо всем.
Скрипты работают хорошо.

Русское сообщество AutoIt

Re: Ожидание закрытия окна
« Ответ #3 Отправлен: Февраль 05, 2018, 23:09:23 »

Оффлайн Astel064 [?]

  • Осваивающий
  • **
  • Сообщений: 258
  • Репутация: 44
  • Пол: Мужской
  • Помог мой пост, ставь +!
    • Astel064
    • Награды
  • Версия AutoIt: 3.3.6.1
Re: Ожидание закрытия окна
« Ответ #4, Отправлен: Февраль 05, 2018, 23:09:49 »
Tempo
Уважаемый, запустите код при отсутствии окна. Примерно через 8 сек Вы увидите сообщение "Окно закрылось". Причем, выход из цикла не выполняется и выполняется повторный вывод сообщения...

Оффлайн Tempo [?]

  • Продвинутый
  • ***
  • Сообщений: 403
  • Репутация: 92
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Ожидание закрытия окна
« Ответ #5, Отправлен: Февраль 05, 2018, 23:19:50 »
Astel064, в бесконечной проверке наличия окна и его закрытия суть темы если я правильно понял автора

И у меня не наблюдается сообщения через 8 секунд (скрипт висит от времени ответа) если не трудно объясните по какому условию оно может появится кроме закрытия окна?
« Последнее редактирование: Февраль 05, 2018, 23:32:14 от Tempo »

Оффлайн Alofa [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1433
  • Репутация: 212
  • Пол: Мужской
  • Windows 7 /10 [x64]
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Ожидание закрытия окна
« Ответ #6, Отправлен: Февраль 05, 2018, 23:57:19 »
Astel064
(нажмите для показа/скрытия)

Русское сообщество AutoIt

Re: Ожидание закрытия окна
« Ответ #6 Отправлен: Февраль 05, 2018, 23:57:19 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
0 Ответов
2825 Просмотров
Последний ответ Январь 21, 2010, 14:07:13
от CreatoR
10 Ответов
7412 Просмотров
Последний ответ Апрель 28, 2010, 12:45:00
от Kaster
0 Ответов
4618 Просмотров
Последний ответ Июнь 19, 2010, 00:03:48
от beaver
7 Ответов
4781 Просмотров
Последний ответ Ноябрь 05, 2010, 11:10:11
от Redline
3 Ответов
2645 Просмотров
Последний ответ Январь 31, 2011, 15:44:03
от Viktor217
1 Ответов
4580 Просмотров
Последний ответ Февраль 27, 2012, 18:34:27
от madmasles
0 Ответов
2599 Просмотров
Последний ответ Февраль 27, 2012, 18:34:48
от madmasles
4 Ответов
2763 Просмотров
Последний ответ Июль 29, 2012, 14:10:16
от warezoogle3
11 Ответов
4231 Просмотров
Последний ответ Апрель 06, 2014, 13:03:26
от Researcher
2 Ответов
4872 Просмотров
Последний ответ Апрель 05, 2016, 17:22:44
от ZeVSalt