Что нового

[Окна, Диалоги] Как организовать ожидание окон win2 или win3 после работы win1

Статус
Закрыто для дальнейших ответов.

AndReySmith

Новичок
Сообщения
2
Репутация
0
Привет all,

имеются три окна win1, win2, win3.
При выполнении кода в win1 активируется либо окно win2 либо win3.
Написал проверку условия на существование окна win2(log успешной загрузки) или win3 (сообщения об ошибках).
Во время выполнения детектируется либо только win2, либо только win3.
Не детектирутся в зависимости от результата.

Прошу подсказать с примером кода как ожидать активации нужного окна.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
Re: [Окна, Диалоги] ожидание win2 или win3 после работы win1

Честно говоря я не понял задачи! :wacko:

AndReySmith [?]
При выполнении кода в win1 активируется либо окно win2 либо win3.

Кем, чем активируются, кодом или самопроизвольно?
Приложите ваш код для наглядности!

Вы об этом?
Код:
While 1
	If WinActive("win2") Then
		;...
	ElseIf WinActive("win3") Then
		;...
	EndIf
WEnd


Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

AdlibRegister('_CheckWin')

$Form1 = GUICreate("win2", 185, 83, 192, 114)
$Label1 = GUICtrlCreateLabel("Log Successful Download", 30, 32, 125, 17)
GUISetState(@SW_HIDE)
$Form2 = GUICreate("win3", 185, 83, 388, 114)
$Label2 = GUICtrlCreateLabel("Error Messages", 56, 32, 77, 17)
GUISetState(@SW_HIDE)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch
	Sleep(250)
	_Win()
WEnd


Func _CheckWin()
	If WinActive("win2") Then
		ConsoleWrite('Pop-up -> win2' & @CRLF)
	ElseIf WinActive("win3") Then
		ConsoleWrite('Pop-up -> win3' & @CRLF)
	EndIf
EndFunc

Func _Win()
	While 1
		Sleep(1000)
		GUISetState(@SW_SHOW, $Form1)
		Sleep(1000)
		GUISetState(@SW_HIDE, $Form1)
		Sleep(1000)
		GUISetState(@SW_SHOW, $Form2)
		Sleep(1000)
		GUISetState(@SW_HIDE, $Form2)
	ExitLoop
	WEnd
EndFunc
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
623
Re: [Окна, Диалоги] ожидание win2 или win3 после работы win1

{TopicNameWarn}
 
Автор
A

AndReySmith

Новичок
Сообщения
2
Репутация
0
Спасибо.
Был использован подход с дополнительной функцией.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
623
AndReySmith
однако же, для дальнейшего комфортного пребывания на этом форуме, не стоит пренебрегать моей просьбой ;)
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
623
И еще, если тема решена, отметь ее таковой
 
Статус
Закрыто для дальнейших ответов.
Верх