Версия для печати темы
UoKit.com Форумы _ UO Pilot _ Возможно ли делать клики по всплывающим окнам?
Автор: Людмила 15.4.2018, 3:38
Возможно ли делать клики по всплывающим окнам?
Смотрите, мне нужны вот такие самые простые действия:
left 1036, 862
wait 5000
left 409, 600
wait 5000
left 1057, 27
wait 5000
Получается первый клик идет по привязанному окну, а потом открывается всплывающее окно и по нему клик уже не идет(( Наверное потому, что это как бы уже другое окно...
Подскажите возможно вообще так настроить чтобы по всплывающему окну шли клики? И чтобы это повторялось...
Автор: cirus 15.4.2018, 3:55
Используйте kleft.
Автор: Людмила 15.4.2018, 4:07
Цитата(cirus @ 15.4.2018, 3:55)
Используйте kleft.
Доброе утро
Это вместо left написать kleft ?
Все точно так же происходит, первый клик открывает всплывающее окно, а второй клик идет за окном и сворачивает его((
Автор: DarkMaster 15.4.2018, 10:10
Цитата
Все точно так же происходит, первый клик открывает всплывающее окно, а второй клик идет за окном и сворачивает его((
Ошибочные координаты. Я даже знаю почему вы их сняли ошибочными: вы навели мышкой на всплывающее окно и нажали ctrl+a чтобы получить коодинаты. Вот только пилот снял координаты относительно левего верхнего угла всплывающего окна, а привязка идет к родительскому и клики рассчитываются относительно родительского. Какой выход? Нажмите ctrl+a для снятия координат, когда всплывающего окна еще нет, но в том месте, где должен быть клик.
Так же можно просто изменить рабочее окно перед тем, как делать клик. Для этого можно использовать следующую конструкцию:
Код
set #lastWindow workwindow // Запоминаем рабочее окно
set workwindow findwindow(Имя всплывающего окна)
left 123 321 // Кликаем
set workwindow #lastWindow // Возвращаем прежнее рабочее окно.
Автор: cirus 15.4.2018, 11:41
Или используйте абсолютные координаты.
Автор: Людмила 15.4.2018, 12:13
Цитата(DarkMaster @ 15.4.2018, 10:10)
Ошибочные координаты. Я даже знаю почему вы их сняли ошибочными: вы навели мышкой на всплывающее окно и нажали ctrl+a чтобы получить коодинаты. Вот только пилот снял координаты относительно левего верхнего угла всплывающего окна, а привязка идет к родительскому и клики рассчитываются относительно родительского. Какой выход? Нажмите ctrl+a для снятия координат, когда всплывающего окна еще нет, но в том месте, где должен быть клик.
Мои мозги не справляются с напряжением : ) Все-равно ведь привязка идет к родительскому, даже если всплывающего окна ещё нет..
Цитата
Так же можно просто изменить рабочее окно перед тем, как делать клик. Для этого можно использовать следующую конструкцию:
Код
set #lastWindow workwindow // Запоминаем рабочее окно
set workwindow findwindow(Имя всплывающего окна)
left 123 321 // Кликаем
set workwindow #lastWindow // Возвращаем прежнее рабочее окно.
Ой, а что означает имя всплывающего окна? если имен там около сорока и они меняются рендомно((
Цитата(cirus @ 15.4.2018, 11:41)
Или используйте абсолютные координаты.
Я прописывала abs но нечего не срабатывает(
Автор: DarkMaster 15.4.2018, 12:54
Цитата
Мои мозги не справляются с напряжением : ) Все-равно ведь привязка идет к родительскому, даже если всплывающего окна ещё нет..
В том то и смысл. Вы когда нажимаете ctrl+A по дочернему окну, то привязка и координаты идут относительно дочернего, а когда по родительскому, относительно родительского. Привязку в своем скрипте вы не меняете, однако точки отсчета у вас разные, т.к. вы снимали координаты с дочернего окна. Сделайте следующим образом:
1) Вызовете в игре дочернее окно.
2) Закройте дочернее окно.
3) Не двигая мышку сделайте альтаб в пилот (он не должен перекрывать место клика).
4) Нажмите ctrl+A.
Таким образом вы снимете корректные координаты точки клика относительно родительского окна и вам не будет необходимости менять привязку.
Автор: Людмила 15.4.2018, 14:08
Цитата(DarkMaster @ 15.4.2018, 12:54)
В том то и смысл. Вы когда нажимаете ctrl+A по дочернему окну, то привязка и координаты идут относительно дочернего, а когда по родительскому, относительно родительского. Привязку в своем скрипте вы не меняете, однако точки отсчета у вас разные, т.к. вы снимали координаты с дочернего окна. Сделайте следующим образом:
1) Вызовете в игре дочернее окно.
2) Закройте дочернее окно.
3) Не двигая мышку сделайте альтаб в пилот (он не должен перекрывать место клика).
4) Нажмите ctrl+A.
Таким образом вы снимете корректные координаты точки клика относительно родительского окна и вам не будет необходимости менять привязку.
Делаю все как вы написали, открываю дочернее окно, выделяю нужное место, закрываю дочернее окно, открываю пилот и жму ctrl+A...
когда запускаю, дочернее окно открывает а потом при клике все равно его сворачивает(
А если дописываю abs, тогда первый клик по всплывающему окну срабатывает а второй который должен закрыть окно не срабатывает... ну и abs если прописывать, тогда я так понимаю не будет в свернутом окне работать((
Автор: DarkMaster 15.4.2018, 15:01
напишите в личку ваш дискорд, свяжемся, я через тим вьювер вам помогу.
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)