Зажать ЛКМ, и сдвинуть мышь

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

bookray

Client
Регистрация
14.07.2015
Сообщения
10
Реакции
2
Баллы
3
Здравствуйте, уважаемые

Есть задача, нужно сдвигать ползунок на странице. Может кто подсказать сниппет, которым можно зажать лкм и сдвинуть мышку на пикселей 20?
 
drag and drop

 
  • Спасибо
Реакции: bookray
Ребята, кто в c# шарит, подскажите, как это реализовать в коде. Я то увидел код, а как это в зенку всунуть. Могли бы то из спецов написать это в коде как вставить в зенку? Т.е. как-то так:
variable x = координаты x;
variable y = координаты y;
и далее движение с зажатой кнопкой

Буду очень благодарен и с почетом к Вашим знаниям.
 
Ребята, кто в c# шарит, подскажите, как это реализовать в коде. Я то увидел код, а как это в зенку всунуть. Могли бы то из спецов написать это в коде как вставить в зенку? Т.е. как-то так:
variable x = координаты x;
variable y = координаты y;
и далее движение с зажатой кнопкой

Буду очень благодарен и с почетом к Вашим знаниям.
DragAndDrop
Код:
Развернуть Свернуть Копировать
//находим элемент, с которым будем работать
HtmlElement he = instance.ActiveTab.FindElementById("SIvCob");
//проверяем, существует ли элемент
if (he.IsVoid){
    //если нет, то кубик уйдет по красной ветке с сообщением ниже
    throw new Exception("Нет нужного элемента");
}

//перемнные для координат элемента
int x = Convert.ToInt32(he.GetAttribute("leftInTab"));
int y = Convert.ToInt32(he.GetAttribute("topInTab"));

//переменные ширины и высоты элемента
int width = Convert.ToInt32(he.GetAttribute("clientWidth"));
int height = Convert.ToInt32(he.GetAttribute("clientHeight"));

//зажимаем мышь в начальных координатах x-5:y+5 и перетаскиваем до конца элемента
instance.ActiveTab.FullEmulationMouseDragAndDrop(x - 5, y + 5, x + width + 1, y + 5);
MouseDown, MouseUp
Код:
Развернуть Свернуть Копировать
//находим элемент, с которым будем работать
HtmlElement he = instance.ActiveTab.FindElementById("SIvCob");
//проверяем, существует ли элемент
if (he.IsVoid){
    //если нет, то кубик уйдет по красной ветке с сообщением ниже
    throw new Exception("Нет нужного элемента");
}

//перемнные для координат элемента
int x = Convert.ToInt32(he.GetAttribute("leftInTab"));
int y = Convert.ToInt32(he.GetAttribute("topInTab"));

//переменные ширины и высоты элемента
int width = Convert.ToInt32(he.GetAttribute("clientWidth"));
int height = Convert.ToInt32(he.GetAttribute("clientHeight"));

//двигаем мышку к началу элемента
instance.ActiveTab.FullEmulationMouseMove(x - 1, y + 5);
//делаем случайную пазу перед нажатием от 0,5 секунды до 1й
System.Threading.Thread.Sleep(Global.Classes.rnd.Next(500, 1000));
//зажимаем левую кнопку мыши
instance.ActiveTab.FullEmulationMouseClick("left", "down");
//двигаем мышь к концу элемента
instance.ActiveTab.FullEmulationMouseMove(x + width + 1, y + 5);
//делаем случайную пазу перед нажатием от 0,5 секунды до 1й
System.Threading.Thread.Sleep(Global.Classes.rnd.Next(500, 1000));
//отпускаем ЛКМ
instance.ActiveTab.FullEmulationMouseClick("left", "up");
Получить нужный элемент можно так:
4.png
Потом нужно вытянуть из скопированного в буфер кода вторую строчку:
5.png
И заменить ею похожую в коде выше.
 
Последнее редактирование:
а как сделать клик по координатам и держать скажем 30 секунд потом отпустить
 
  • Спасибо
Реакции: art22 и djaga
не сработал там ID постоянно меняется и не к чему закрепиться по этому клик по координатам нужен

Клик по координатам с задержкой 5 сек:
Развернуть Свернуть Копировать
// мышь по координатам
instance.ActiveTab.FullEmulationMouseMove(500, 480);
// клик с зажатием 5сек
instance.ActiveTab.FullEmulationMouseClick("left", "down");
Thread.Sleep(5 * 1000);
instance.ActiveTab.FullEmulationMouseClick("left", "up");

Ниже приложил шаблон для примера ↓
 

Вложения

DragAndDrop
Код:
Развернуть Свернуть Копировать
//находим элемент, с которым будем работать
HtmlElement he = instance.ActiveTab.FindElementById("SIvCob");
//проверяем, существует ли элемент
if (he.IsVoid){
    //если нет, то кубик уйдет по красной ветке с сообщением ниже
    throw new Exception("Нет нужного элемента");
}

//перемнные для координат элемента
int x = Convert.ToInt32(he.GetAttribute("leftInTab"));
int y = Convert.ToInt32(he.GetAttribute("topInTab"));

//переменные ширины и высоты элемента
int width = Convert.ToInt32(he.GetAttribute("clientWidth"));
int height = Convert.ToInt32(he.GetAttribute("clientHeight"));

//зажимаем мышь в начальных координатах x-5:y+5 и перетаскиваем до конца элемента
instance.ActiveTab.FullEmulationMouseDragAndDrop(x - 5, y + 5, x + width + 1, y + 5);
MouseDown, MouseUp
Код:
Развернуть Свернуть Копировать
//находим элемент, с которым будем работать
HtmlElement he = instance.ActiveTab.FindElementById("SIvCob");
//проверяем, существует ли элемент
if (he.IsVoid){
    //если нет, то кубик уйдет по красной ветке с сообщением ниже
    throw new Exception("Нет нужного элемента");
}

//перемнные для координат элемента
int x = Convert.ToInt32(he.GetAttribute("leftInTab"));
int y = Convert.ToInt32(he.GetAttribute("topInTab"));

//переменные ширины и высоты элемента
int width = Convert.ToInt32(he.GetAttribute("clientWidth"));
int height = Convert.ToInt32(he.GetAttribute("clientHeight"));

//двигаем мышку к началу элемента
instance.ActiveTab.FullEmulationMouseMove(x - 1, y + 5);
//делаем случайную пазу перед нажатием от 0,5 секунды до 1й
System.Threading.Thread.Sleep(Global.Classes.rnd.Next(500, 1000));
//зажимаем левую кнопку мыши
instance.ActiveTab.FullEmulationMouseClick("left", "down");
//двигаем мышь к концу элемента
instance.ActiveTab.FullEmulationMouseMove(x + width + 1, y + 5);
//делаем случайную пазу перед нажатием от 0,5 секунды до 1й
System.Threading.Thread.Sleep(Global.Classes.rnd.Next(500, 1000));
//отпускаем ЛКМ
instance.ActiveTab.FullEmulationMouseClick("left", "up");
Получить нужный элемент можно так:
Посмотреть вложение 38787
Потом нужно вытянуть из скопированного в буфер кода вторую строчку:
Посмотреть вложение 38788
И заменить ею похожую в коде выше.
привет ! а как сделать поиск по XPath ?
 
  • Спасибо
Реакции: санчил и backoff
При регистрации почты Аутлук этот способ не хочет работать. Есть решение?
 

Вложения

  • Безымянный.png
    Безымянный.png
    29,2 KB · Просмотры: 2

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