Что нового

Помогите пожалуйста проверить цвет пикселя по координатам

Aleks_z84

Новичок
Сообщения
4
Репутация
0
Версия AutoIt: 3.3.8.1

Описание:
Всем здравствуйте, нужна ваша помощь, так как в этом деле я новичок.

Мне нужно на страничке браузера по заданным координатам проверять пиксель на цвет,
Цикл в цикле
1. если цвет пикселя = 0xCCD2D9 тогда ждем и проверяем опять цвет.
2. Если цвет = 0xCCD8E7 тогда выполняем другое условие.

Заранее всем спасибо

Примечания:
 

Ksaan

Знающий
Сообщения
207
Репутация
15
Код:
Global $Color = 0xCCD8E7 
Global $X =
Global $Y =

Opt ( 'PixelCoordMode' , 0 )

While 1
   If PixelGetColor($X, $Y) = $Color Then
        ;kod
   EndIf
   Sleep(100)
Wend
 
Автор
A

Aleks_z84

Новичок
Сообщения
4
Репутация
0
Как сделать цикл в цикле?
На примере ниже, бесконечно вводит "Mercedes-Benz", а мне нужно проверять цвет пока $coord_1 не станет равен $color_1, и только тогда ввести "Mercedes-Benz", выйти из цикла и выполнить команду Send("Sprinter CDI 315")и пойти дальше выполнять.
Код:
Func Terminate()
    Exit 02
 EndFunc

$i=1
$m = InputBox("Script", "Введіть номер рядка:")
$n = $m + 1

#include <Array.au3>
While $i <= 3
   $n=($m + $i)
   $i = $i + 1
   
$coord_1 = PixelGetColor(621, 275) ; цвет пикселя на данный момент времени   
$color_1 = 0xCCD8E7 ;синий цвет, который нужен
   
 WinActivate("Mozilla Firefox")
  Opt("MouseCoordMode",2)
  MouseClick("left", 151, 125, 1)   
  Sleep(500)	  
  MouseClick("left", 310, 305, 1)   
   

while 1
   if $coord_1 = $color_1 Then
	  Sleep(100)
	  MouseClick("left", 554, 336, 1)   
      Send("Mercedes-Benz")  
   EndIf 
WEnd   


MouseClick("left", 595, 490, 1) 
Send("Sprinter CDI 315")
Wend
 

InnI

AutoIT Гуру
Сообщения
4,984
Репутация
1,461
Aleks_z84
Код:
while 1
   $coord_1 = PixelGetColor(621, 275) ; <= добавить
   if $coord_1 = $color_1 Then
      Sleep(100)
      MouseClick("left", 554, 336, 1)
      Send("Mercedes-Benz")
      ExitLoop ; <= добавить
   EndIf 
WEnd
 
Верх