Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: FJ on November 02, 2015, 11:30:03 PM

Title: Динамичные координаты
Post by: FJ on November 02, 2015, 11:30:03 PM
Доброго дня форумчане!
Завис над такой вот задачкой, хочу перед запуском кликера забить координаты xmin,ymin,xmax,ymax, чтоб можно было работать на разных разрешениях допустим передвинул окно в сторону, сделал его уже. Не нужно будет переписывать все координаты, которых очень много. Задачка вроде легкая, но я что-то не могу понять, как ее реализовать.
Спасибо заранее! :)
Title: Re: Динамичные координаты
Post by: Oraven on November 03, 2015, 08:21:57 AM
Code: (clickermann) [Select]
// наводим мышь на окно и запускаем
WNDGETINFO(HGET($_xmouse,$_ymouse), $xmin,$ymin,$xmax,$ymax)

start:

// здесь твой скрипт

GOTO(start)
Title: Re: Динамичные координаты
Post by: Vint on November 03, 2015, 08:25:05 AM
А в чём трудность? берёшь и пишешь.

Но ты быстро замучаешься каждый раз менять. Есть несколько более простых способов.

1. В начале скрипта командами передвигаешь окно всегда в одно и то же место и задаёшь ему нужные размеры.
WNDFIND, WNDPOS, WNDSIZE  в помощь.

2. Определяешь эти min и max при старте автоматом WNDGETINFO

Оба эти пункта работают только на одной системе с одинаковой темой оформления. Ну или вносить корриктеровки от системы на высоту заголовков окон.

3. Найти в приложение стабильные стационарные элементы изображения и через их поиск (IF_PICTURE_IN) привязать начальную точку отсчёта которую будешь использовать в дальнейшем во всех координатах. Таких точек может быть несколько, если часть интерфейса подвижна и подстраивается под размеры окна.
Title: Re: Динамичные координаты
Post by: FJ on November 03, 2015, 11:58:39 AM
Спасибо за ответы, попробую этими командами.
Но тут проблема в том, что в один день окно может быть Xmin = 10 Ymin =10 Xmax =20 Ymax = 20, а в другой Xmin = 5 Ymin = 5 Xmax = 30 Ymax = 30
Так - то я написал код, я задаю в ручную эти 4 координаты, и все остальное считается.