Что нового

Процессы не всегда запускается AdlibRegister

smsgeorge

Новичок
Сообщения
54
Репутация
0
Не всегда запускается AdlibRegister("timer",1000). Просто иногда он вообще не работает, перезагружаешь программу, работает.
Код:
Global $timer_1 = TimerInit()
      AdlibRegister("timer",1000)
       global $proverka_vremeni_1

из-за этого не знаю как сделать надежный таймер. То есть прошло 10 секунд, окно должно окраситься в зеленый, потом через 10 секунд в желтый и так далее. Но Иногда AdlibRegister не запускается. Хоть минуту жди.
Код:
Func timer()
if  TimerDiff($timer_1)>3000 and TimerDiff($timer_1)<5000 then
      if $proverka_vremeni_1<>1 then
          $proverka_vremeni_1=1
          GUISetBkColor ( 0xe5eb4c, $mainwindow )
         GUISetState()
      EndIf

ElseIf TimerDiff($timer_1)>5000 and TimerDiff($timer_1)<8000 then
     if $proverka_vremeni_1<>2 then
          $proverka_vremeni_1=2
          GUISetBkColor ( 0xebb43d, $mainwindow )
          GUISetState()
     EndIf
ndIf

EndFunc

Сообщение автоматически объединено:

С чем вообще такое может быть связанно? Какая теория?
 
Последнее редактирование:

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,662
Репутация
2,461
Не всегда запускается AdlibRegister("timer",1000)
В данном случае всегда, просто условия в функции ограничивают действия...
Скорее всего нужно обнулять таймер.
Код:
Global $timer_1 = TimerInit()
AdlibRegister("timer", 1000)

Func timer()
    If TimerDiff($timer_1) > 3000 And TimerDiff($timer_1) < 5000 Then
        GUISetBkColor(0xE5EB4C, $mainwindow)
        GUISetState()
    ElseIf TimerDiff($timer_1) > 5000 And TimerDiff($timer_1) < 8000 Then
        GUISetBkColor(0xEBB43D, $mainwindow)
        GUISetState()
    EndIf
    
    If TimerDiff($timer_1) >= 8000 Then
        $timer_1 = TimerInit()
    EndIf
EndFunc


$proverka_vremeni_1 тут вообще бессмысленно проверять, условие всегда сработает.
 
Автор
S

smsgeorge

Новичок
Сообщения
54
Репутация
0
$proverka_vremeni_1 - это чтобы окно постоянно не обновлялось. Типа один раз фон изменился и все. А то каждый тик AdlibRegister применялся фон.
 
Верх