Что нового

[Элементы GUI] Не работает кнопка после смены окна

JaG

Новичок
Сообщения
17
Репутация
0
После смены окна не работает кнопка в event mod'e, почему так?
УЖе все перепробывал, скорее всего ошибка на глазах, но я как всегда в упор не вижу

Вот в этом коде в первом окне работает кнопка, после того как окно сменится кнопка на новом окне не работает

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



	Global $menu, $info, $msg, $Examen, $u=0, $size, $gotovo


Example()

Func Example()



	Opt("GUIOnEventMode", 1)


	$menu = GUICreate("Чит by JaG", 200, 300, -1, -1)
	GUICtrlCreateLabel("ПОВЫСИТЬ СТАТУС", 45, 10)
	$Examen = GUICtrlCreateButton("Examen", 20, 30, 160)
    GUICtrlSetOnEvent($Examen, "_Examen")


	GUISetState(@SW_SHOW)
	
Do
Until $u = 1
EndFunc   ;==>Example

Func _Examen()
	Opt("GUIOnEventMode", 1)

	
	$u=1

	GUIDelete($menu)
	
	$info = GUICreate("Настройка", 450, 400, -1, -1, $WS_SIZEBOX, $WS_EX_TOPMOST)
	GUICtrlCreateLabel("Расположите данное окно так чтобы оно перекрывало игровое поле ПОЛНОСТЬЮ!", 10, 10, -1, -1)
	GUICtrlSetColor(-1, 0xff0000)
	GUICtrlCreateLabel("Потяните за край для изменения размера!", 10, 70, -1, -1)
	GUICtrlSetColor(-1, 0xff0000)
	$gotovo = GUICtrlCreateButton("ГОТОВО", 30, 110, 70, 40)
    GUICtrlSetOnEvent($gotovo, "_Wincoord")

	GUISetState(@SW_SHOW)
	
	While 1
	WEnd
	
EndFunc

Func _Wincoord()
$size = WinGetPos("[active]")
MsgBox(0, "Active window stats (x,y,width,height):", $size[0] & " " & $size[1] & " " & $size[2] & " " & $size[3])
EndFunc


:IL_AutoIt_1:

p.s извеняюсь за несоблюдение правил названия переменных, и функций
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
1. Необходимо использовать один единый цикл ожидания для GUI.
2. При работе GUIOnEventMode в цикл ожидания GUI необходимо вставить Sleep, хотя бы на 10 мс.
3. Если правильно сделать пункт 1, то и кнопка заработает.
4. Опцию
Код:
Opt("GUIOnEventMode", 1)
нет необходимости устанавливать для каждого GUi, достаточно только 1 раз в начале скрипта.
5. Если же необходимость для каждого GUI свой цикл ожидания, что при GUIOnEventMode не рационально, то цикл ожидания закрываемоего GUI необходимо завершить.
6. JaG [?]
извеняюсь за несоблюдение правил названия переменных, и функций
Нет необходимости за это приносить извинения, это Ваш скрипт - как его писать и называть переменные/функции - ваша воля. Хотя рекомендую привыкать к негласному стандарту именования.
 
Верх