Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Изменение масштабирования в перекрытом окне?, Получение цвета и клик
Demergo
сообщение 29.12.2018, 10:46
Сообщение #1


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Надо проверять цвет точки и если "да" то кликать по координатам.
Использую "Left" с привязкой к окну и "Get color" для проверки цвета пикселя, тоже с привязкой к окну.

Если окно активно то все работает, но стоит его перекрыть как изменяется цвет тех же координат и судя по работе команды "Left" клик происходит в другом месте.

Кто-то сталкивался с подобным? как отследить изменение масштабирования
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.12.2018, 11:37
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26691
Пользователь №: 16.971
Возраст: 29



Цитата
но стоит его перекрыть как изменяется цвет тех же координат

Значит код неправильный.
Цитата
как отследить изменение масштабирования

Что под этим подразумевается? Изменение размеров окна, параметров экрана (про это забыть, 100% должно быть) или ещё что-то.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Demergo
сообщение 29.12.2018, 11:53
Сообщение #3


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Цитата(cirus @ 29.12.2018, 12:37) *

Значит код неправильный.

Что под этим подразумевается? Изменение размеров окна, параметров экрана (про это забыть, 100% должно быть) или ещё что-то.


вот скрипт

get color #color 550, 604 66220
msg #color
end_script

если проверять цвет этого форума то он выдаст разные результаты с активным и неактивным окном
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.12.2018, 12:03
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26691
Пользователь №: 16.971
Возраст: 29



Код
// сделать привязку к рабочему столу
// можно перекрыть рабочий стол другом окном
// цвет должен быть тот же что и без перекрытия
get color #color 550, 604 workwindow
log #color
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Demergo
сообщение 29.12.2018, 12:13
Сообщение #5


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Цитата(cirus @ 29.12.2018, 13:03) *

Код
// сделать привязку к рабочему столу
// можно перекрыть рабочий стол другом окном
// цвет должен быть тот же что и без перекрытия
get color #color 550, 604 workwindow
log #color
end_script



вроде бы заработало, похоже я запутался в цветах/хендлах
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.12.2018, 12:26
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26691
Пользователь №: 16.971
Возраст: 29



Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени
get color #color 550, 604
log #color
get color #color 550, 604 #handle
log #color
end_script

Когда окно активно цвет разный?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Demergo
сообщение 29.12.2018, 12:38
Сообщение #7


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Цитата(cirus @ 29.12.2018, 13:26) *

Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени
get color #color 550, 604
log #color
get color #color 550, 604 #handle
log #color
end_script

Когда окно активно цвет разный?


рано я обрадовался, не работает

прогнал ваш скрипт - цвета разные
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.12.2018, 12:42
Сообщение #8


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26691
Пользователь №: 16.971
Возраст: 29



Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени

init_arr %a 226, 610 13214519       // указать координаты и цвет

// тут не менять ничего
for #i -10 30
    for #j -10 100
        set #x %a[1] + #i
        set #y %a[2] + #j
        set #color %a[3]
        get color #color #x #y #handle
        if #color = %a[3]
            set #x #x - %a[1]
            set #y #y - %a[2]
            log #x #y  // смещение для координат
        end_if
    end_for
end_for
end_script

Что скрипт выдаст? Ждите когда закончит работу.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Demergo
сообщение 29.12.2018, 13:03
Сообщение #9


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Цитата(cirus @ 29.12.2018, 13:42) *

Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени

init_arr %a 226, 610 13214519       // указать координаты и цвет

// тут не менять ничего
for #i -10 30
    for #j -10 100
        set #x %a[1] + #i
        set #y %a[2] + #j
        set #color %a[3]
        get color #color #x #y #handle
        if #color = %a[3]
            set #x #x - %a[1]
            set #y #y - %a[2]
            log #x #y  // смещение для координат
        end_if
    end_for
end_for
end_script

Что скрипт выдаст? Ждите когда закончит работу.


выдало "11:57:38 1 (autosaved_6.txt, 14): 8 0"
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.12.2018, 13:10
Сообщение #10


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26691
Пользователь №: 16.971
Возраст: 29



Цитата
выдало "11:57:38 1 (autosaved_6.txt, 14): 8 0"

Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени
get color #color 550, 604
log #color
get color #color 558, 604 #handle  // +8 к координате X
log #color
end_script

Цвет должен быть одинаковый.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Demergo
сообщение 29.12.2018, 13:30
Сообщение #11


**

Neophyte
Сообщений: 34
Регистрация: 22.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.040
Возраст: 29



Цитата(cirus @ 29.12.2018, 14:10) *

Код
set #handle findwindow (Yandex)  // вместо Yandex вписать имя окна или часть имени
get color #color 550, 604
log #color
get color #color 558, 604 #handle  // +8 к координате X
log #color
end_script

Цвет должен быть одинаковый.


да, теперь "в точку" (IMG:style_emoticons/default/smile.gif) спасибо за инструмент для выявления смещения и за помощь с наладкой. Все заработало (IMG:style_emoticons/default/biggrin.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 18.4.2024, 10:27
Designed by Nickostyle