Добрый день, уважаемые коллеги. Запутался в 3-х соснах. Не могу понять почему скрипт зависает после 22й строки, т.е. он рисует окно
$hDesc = GUICreate("Выберите норматив на выполнение",370,50)
а кнопки уже не выводит при этом скрипт зависает
Смысл скрипта - по клике по кнопке "Начать обслуживание" должно появиться окно с выбором
$hDesc = GUICreate("Выберите норматив на выполнение",370,50)
а кнопки уже не выводит при этом скрипт зависает
Смысл скрипта - по клике по кнопке "Начать обслуживание" должно появиться окно с выбором
Код:
#include <MouseOnEvent.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt("TrayIconHide", 0) ; Убираем иконку
Global $Timer = False
_MouseSetOnEvent($MOUSE_PRIMARYDOWN_EVENT, "_MOUSE_CLICK"); - событие на левую кнопку мыши
While 1
Sleep (1000)
WEnd
Func _MOUSE_CLICK()
;Sleep (1000)
$aPos = MouseGetPos()
MouseClick ('left', $aPos[0], $aPos[1], 1)
$ControlText = ControlGetText("[ACTIVE]", "", "")
$ControlGet = ControlGetFocus (WinGetTitle ("[ACTIVE]"), '')
If $ControlText = 'Начать обслуживание' And $Timer = False Then
Global $Timer = True
$hDesc = GUICreate("Выберите норматив на выполнение",370,50)
$Button_10 = GUICtrlCreateButton("10 мин", 25, 15, 70)
$Button_15 = GUICtrlCreateButton("15 мин", 105, 15, 70)
$Button_30 = GUICtrlCreateButton("30 мин", 185, 15, 70)
$Button_50 = GUICtrlCreateButton("50 мин", 265, 15, 70)
GUISetState()
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete()
ExitLoop
Case $Button_10
Timer(1)
ExitLoop
Case $Button_15
Timer(14)
ExitLoop
Case $Button_30
Timer(29)
ExitLoop
Case $Button_50
Timer(49)
ExitLoop
EndSwitch
WEnd
EndIf
ToolTip($ControlText & ' ' & $ControlGet)
EndFunc
Func Timer($time)
GUIDelete() ; Отключаем GUI
$sec = 1000 * 60
Sleep ($time * 1000 * 60)
SplashTextOn ("Время талона заканчивается через 1 мин", "Не забудьте закрыть обращение")
MsgBox (4096, "Время талона заканчивается через 1 мин", "Не забудьте закрыть обращение")
SplashOff()
EndFunc
Последнее редактирование: