Помогите справится с яндекс картой (с курсором)

  • Автор темы Автор темы Alex62
  • Дата начала Дата начала

Alex62

Client
Регистрация
16.10.2015
Сообщения
233
Реакции
31
Баллы
28
Добрый день, ребята помогите справится с яндекс картой (с курсором).
Вот есть такой сайт est.ua/new_request/ там есть карта, где по середине стоит курсор, его нужно сдвинуть буквально на несколько миллиметров, что бы он из красного стал синим.
Пробовал с помощью drag-n-drop, но у меня что то не получается
 
А можно попросить по подробнее? Потому как пробую, не получается
 
Последнее редактирование:
тоже пробовал, такое ощущение что он клацает сначала в одно местро, а потом в другое. Либо мимо карты.
 
Поясните пожалуйста какой курсор вы имеете ввиду. И пришлите скриншот
 
вот скриншот, при добавлении, когда вводишь адрес. Вот есть красный курсор, его нужно сдвинуть немного и тогда он должен стать синего цвета.
Безымянный.png
 
вот скриншот, при добавлении, когда вводишь адрес. Вот есть красный курсор, его нужно сдвинуть немного и тогда он должен стать синего цвета.
Посмотреть вложение 18409
Там нужно сначала найти координаты красного курсора, затем задать конечные. Пример можно вот здесь посмотреть - http://zennolab.com/discussion/threads/how-to-slide.21718/#post-147436
 
я очень не дружу с программированием, только на кубиках учусь. не могли бы помочь?
id у него нет, есть class
Безымянный1.png
 
Последнее редактирование:
На кубиках тут вряд ли получится сделать.
Нужно находит элемент по аттрибуту class Брать его координаты и двигать курсор мыши от этих координат.
 
  • Оценить
Реакции: Alex62
тебе надо взять в конструкторе get - top и get - left положить в переменные, а потом в коде прибавить к ним пару пикселей - это будут начальные координаты, а далее куда нужно, но в код вникнуть придётся без этого никак сейчас
 
  • Оценить
Реакции: Alex62 и VladZen
На кубиках тут вряд ли получится сделать.
Нужно находит элемент по аттрибуту class Брать его координаты и двигать курсор мыши от этих координат.

Я не знаю, то или не то я налепил, но вот что у меня получилось

Код:
Развернуть Свернуть Копировать
public static int Execute(Instance instance, IZennoPosterProjectModel project)
{
   // find element using "regexp" parameter
  he = tab.MainDocument.FindElementByAttribute("ymaps", "class", "ymaps-2-1-47-image ymaps-2-1-47-patched-for-print", "regexp", 0);
  // if the element was found
if (!he.IsVoid)
{
//scroll to the element  
  he.ScrollIntoView();
//sliding the element
  he.RiseEvent("onmousedown", "full");
  instance.ActiveTab.MouseMove(97, 216, 197, 216);
  he.RiseEvent("onmouseup", "full");
}
}

Безымянный2.png
 
Последнее редактирование:
тебе надо взять в конструкторе get - top и get - left положить в переменные, а потом в коде прибавить к ним пару пикселей - это будут начальные координаты, а далее куда нужно, но в код вникнуть придётся без этого никак сейчас
Или вот как вы говорите

Код:
Развернуть Свернуть Копировать
instance.ActiveTab.DragDrop(project.Variables["Variable2"].Value, project.Variables["Variable3"].Value, 200, 200);


Простите, наверное всех достал, но пытаюсь понять, честно :ah:

Безымянный3.png
 
Может кто то помочь разобраться? я совсем не разбираюсь в программировании.
 
Может кто то помочь разобраться? я совсем не разбираюсь в программировании.
Вот такой костыль.
В OwnCodeUsings добавить using MouseKeyboardLibrary;
В References добавить MouseKeyboardLibrary.dll
Двигаем мышу с текущей позиции на сколько надо пикселей и куда надо по X,Y или по одному из направлений.
 

Вложения

  • mouse.rar
    mouse.rar
    15,5 KB · Просмотры: 286
а как поставить мышь на этот эллемент? допустим координаты я нашел его ... а дальше что нужно сделать?
 
а как поставить мышь на этот эллемент? допустим координаты я нашел его ... а дальше что нужно сделать?
Конструктор действий>Rise>Focus - поставит фокус на этот элемент.
А дальше метод MouseMove в коде C#:
Код:
Развернуть Свернуть Копировать
instance.ActiveTab.MouseMove(x1, y1, x2, y2);
где x1,x2 - координаты элемента, x2,y2 - координаты куда двинуть.
 
Все равно не получается, не могу понять причину. Вот выкладываю проект, можете глянуть что там не так сделал?
 

Вложения

Попробуйте использовать следующий C# код, эмулирующий сначала нажатие левой кнопки мыши, перемещение и затем нажатие правой кнопки.
Для перемещения курсора в определенную точку необходимо задавать начальную и конечные координаты.
 

Вложения

  • Оценить
Реакции: VladZen и Alex62
Спасибо большое помогло. Только теперь другая проблема, если карта не в пределе видимости экрана, то код не срабатывает. Что можно сделать с этим? что бы переместится по странице в область карты, что бы она попадала на экран? foсus не помогает
 
Все получилось, клацаю по карте кликом.
Попробуйте использовать следующий C# код, эмулирующий сначала нажатие левой кнопки мыши, перемещение и затем нажатие правой кнопки.
Для перемещения курсора в определенную точку необходимо задавать начальную и конечные координаты.
Спасибо вам большое. Спасибо всем большое
 
Последнее редактирование:
  • Оценить
Реакции: copper12 и arhip1985

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)