Что нового

Определение мигающего элемента

DenLDI

Новичок
Сообщения
4
Репутация
0
Заданная кнопка в приложении, при активации мигает.

Помогите привязать проверку ко времени и сделать фунцию так чтобы:
1 за промежуток времени $time проводить постоянный поиск искомого цвета $C
2 когда искомый цвет $C найден, функция прекращает работу в любой момент времени $time и выдает результат.
3 если цвет не найден за время $time, выдает результат не активна.

Код:
Func flashing_botton() 
	Local $C=0x45772D ; Искомый цвет пикселя
	Local $x1=597 ; границы области поиска
	Local $x2=607 
	Local $y1=641 
	Local $y2=644 
	Local $sh=30 ; вариация цвета
	Local $time=1000;  1 секунда - время проверки мигания
	
	Local $botton=PixelSearch( $x1, $y1, $x2, $y2, $C, $sh )
	If @error=0 Then ; цвет найден
		ProgressOn("","","Активна",1024,0,1)
	ElseIf @error=1 Then ; ошибка 
		ProgressOn("","","Не Активна",1024,0,1)
	EndIf
EndFunc
 

InnI

AutoIT Гуру
Сообщения
4,958
Репутация
1,448
Код:
If flashing_button(597, 607, 641, 644, 0x45772D, 30, 1000) Then
  ConsoleWrite("Активна" & @LF)
Else
  ConsoleWrite("Неактивна" & @LF)
EndIf

Func flashing_button($x1, $x2, $y1, $y2, $C, $sh, $time)
  Local $start = TimerInit()
  Do
    PixelSearch( $x1, $y1, $x2, $y2, $C, $sh )
    If Not @error Then Return True
    If TimerDiff($start) >= $time Then Return False
  Until 0
EndFunc
 
Автор
D

DenLDI

Новичок
Сообщения
4
Репутация
0
Здравствуйте InnI.
Спасибо, по вашему примеру разобрался, так все заработало как нужно.
 
Верх