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

 
Ответить в эту темуОткрыть новую тему
> Проблема в определении координат, Пилот кликает со смещением на сотню пикселей выше заданного
Olga
сообщение 24.1.2018, 7:53
Сообщение #1


*

Registred
Сообщений: 5
Регистрация: 11.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.674



Код
set #handleWin findwindow (***)
set workwindow #handleWin
wait 180000 + random (30000)
if 639, 650 1711907
left 768, 152
wait 3000 + random (100)
end_if
if 11, 243 1056421
start_script 1 wait
end_if
end_script

Нужно сделать выполнение некоторых функций при условии что определённый участок окна игры будет определённого цвета. Проблема в том, что введённые через CTRL + A во время сборки скрипта координаты, совершенно не совпадают с теми, которые кликает Пилот. И такая проблема возникает на компьютере с Win 7 и браузером Хром, на ноутбуках с Win 10 и Яндекс-Браузерами таких проблем не возникает - Пилот кликает и берёт пробу цвета там где положено. ОС виновата или браузер не знаю.
Если координаты, по которым нужно кликнуть, я могу вычислить (Пилот кликает выше заданного на сотню пикселей), то с определением цвета сложнее, вернее практически невозможно угадать нужную точку из-за неравномерности "окраски" этих самых пикселей...
В чём проблема? Что здесь можно придумать?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Olga
сообщение 24.1.2018, 8:13
Сообщение #2


*

Registred
Сообщений: 5
Регистрация: 11.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.674



Проблема в Хроме. Сейчас на ноутбуке с Win 10 попробовала, так же кликает со смещением на сотенку пикселей выше. Наверняка же есть способ побороть эту проблему?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 24.1.2018, 12:06
Сообщение #3


**********

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



Поиск_пути_к_дочернему_окну
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Olga
сообщение 24.1.2018, 19:53
Сообщение #4


*

Registred
Сообщений: 5
Регистрация: 11.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.674



Цитата(cirus @ 24.1.2018, 12:06) *

Попробую, хотя не очень поняла про "дочернее окно"...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 24.1.2018, 20:11
Сообщение #5


**********

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



В мозиле не должно быть смещения, там весь браузер одно окно, если ничего не поменяли.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Olga
сообщение 29.1.2018, 6:49
Сообщение #6


*

Registred
Сообщений: 5
Регистрация: 11.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.674



Цитата(cirus @ 24.1.2018, 12:06) *

Код
exec "C:\Program Files\***"
wait 30s
set #ownerHandle findwindow (***)
set #tmp getwindow (#ownerHandle child)
set #childHandle getwindow (#tmp )
set workwindow #childHandle
...
end_script

Не работает, вдобавок складываются оба окна - и браузер и Пилот... Может кликала не там? Первый клик сделала вверху на вкладке браузера, второй клик по самой игре.
Мозиллу использовать не вариант, компьютер от Мозиллы буквально дохнет. Только Хром или Яндекс. Но у Яндекса свои заморочки, не связанные с Пилотом, любит он открывать вместо заданной в настройках страницы с игрой свои плитки или страницу "Я обновился" (IMG:style_emoticons/default/unsure.gif) Нужно заставить корректно работать Хром. Помогайте, может ещё какие то мысли есть (IMG:style_emoticons/default/rolleyes.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 29.1.2018, 17:05
Сообщение #7


**********

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



Цитата
вдобавок складываются оба окна

Как это понять?
Цитата
Может кликала не там? Первый клик сделала вверху на вкладке браузера, второй клик по самой игре.

Там не кликать надо, а нажимать Ctrl+A.
1. Открываем браузер с нужной игрой.
2. Запускаем скрипт для поиска дочернего окна.
3. Наводим курсор на рамку/заголовок браузера. Нажимаем Ctrl+A.
4. Наводим курсор на игру. Нажимаем Ctrl+A.
5. Скрипт для поиска дочернего окна больше не потребуется.
Полученный код вставляем в пилот. Дописываем:
Код
// код из лога
set workwindow #childHandle
log #ownerHandle  // это будет хендл родительского окна, тот же что Ctrl+A на рамке браузера
log #childHandle   // это хендл дочернего, тот же что Ctrl+A над окном с игрой, т. е. тот что и нужен.
// если хендлы правильные проверяйте клики, для начала лучше используйте kleft, видно куда кликает.
end_script

Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

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

 

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