PixelSearch координаты не совпадают с Position в AutoIt Windows Info

Ответить
Аватара пользователя
Adder007

PixelSearch координаты не совпадают с Position в AutoIt Windows Info

Сообщение Adder007 »

Добрый день!

Столкнулся со следующей проблемой, большая просьба помочь разобраться



В Paint нарисовал точку определенного цвета.

Значение точки "Position" в AutoIt Windows Info: 110, 256

Скриптом ниже нахожу координаты, используя PixelSearch и получаю значение 277, 644

Затем перевожу курсор мыши на полученные координаты и вывожу координаты курсора, получаю: 278, 645



Для информации, разрешение экрана:3840/2160 + прикрепил файл с точкой в Paint



Скрипт:

$hWOW = WinGetHandle("[CLASS:MSPaintApp]"); Присваиваю переменную окна, в котором будет работать скрипт

WinActivate($hWOW); Переключаюсь на заданное окно



HotKeySet("{F9}","Start")

HotKeySet("{F10}","Stop")





While True



WEnd





Func Start()

While True

sleep (500)

$coord = PixelSearch(3840, 2160, 0, 0, 0x3E7117); ищу координаты цвета, начиная с нижнего правого угла экрана

If @error = 1 Then

MsgBox(0, "not found", "not found")

ElsE

MsgBox(0, "found", $coord[0] & "," & $coord[1]); вывожу координаты пикселя определенного цвета

sleep (1000)

MouseMove ($coord[0],$coord[1]); двигаю курсор по найденным координатам

sleep (1000)

$aPos = MouseGetPos()

MsgBox(4096, "mouse coordinates", 'X= ' & $aPos[0] & ", Y= " & $aPos[1]); вывожу текущие координаты положения курсора

EndIf



WEnd

EndFunc



Func Stop()

Exit

EndFunc
Вложения

[Расширение jpg было запрещено, вложение больше недоступно.]

Аватара пользователя
Adder007

Re: PixelSearch координаты не совпадают с Position в AutoIt Windows Info

Сообщение Adder007 »

Проблему решил следующим образом:

1. Определил 2 параметра (должны быть по умолчанию, но на всякий случай прописал отдельно0Изображение

Opt("PixelCoordMode",1)

Opt("MouseCoordMode",1)

2. Пронормировал координаты, которые выдает PixelSearch с координатами, которые выдает MouseGetPos

В моем случае

MouseGetPos/PixelSearch ~0,39
Ответить

Вернуться в «AutoIt»