Как зажать левую кнопку мыши и дальше с ней работать?

DartBeider

Client
Регистрация
16.05.2013
Сообщения
44
Благодарностей
3
Баллы
8
На сайт нельзя вставить код путем "добавить элемент", нужно в коорд. Х1-У1 зажать левую кнопку мыши, дойти до Х2-У2, потом нажать Ctrl+c, поменять вкладку и нажать Ctrl+V - это единственный способ вставить код на сайт. Подскажите, как, пожалуйста?
 

СТЕПАН

Moderator
Регистрация
17.03.2013
Сообщения
951
Благодарностей
353
Баллы
63

Hungry Bulldozer

Moderator
Регистрация
12.01.2011
Сообщения
3 441
Благодарностей
834
Баллы
113
А кликнуть и сделать ctrl+a и ctrl+v прокатит?
 

DartBeider

Client
Регистрация
16.05.2013
Сообщения
44
Благодарностей
3
Баллы
8
Как правильно написать "сделать ctrl+a"....и как сделать ctrl+с, +v.... координаты движения мышки определил через размеры дивов.. и еще вопрос, если я получаю переменную Х1 из координатов, а потом мне нужно ее уменьшить, ну, например, на 10 - в каком блоке это делать?
 

Hungry Bulldozer

Moderator
Регистрация
12.01.2011
Сообщения
3 441
Благодарностей
834
Баллы
113
В блоке выполнения JavaScript.
Создайте переменную articleText и туда задайте текст для вставки
Дальше c#:
JavaScript:
if(instance.ActiveTab.IsBusy) instance.ActiveTab.WaitDownloading();
lock(SyncObjects.InputSyncer)
{
    Emulator.ActiveWindow(instance.FormTitle);
    System.Windows.Forms.Clipboard.SetText(project.Variables["articleText"].Value);
    System.Windows.Forms.SendKeys.SendWait("^v");
}
System.Threading.Thread.Sleep(1000);
 
  • Спасибо
Реакции: DartBeider

confirm2315

Новичок
Регистрация
26.01.2015
Сообщения
27
Благодарностей
10
Баллы
3
Скажите, что не так делаю, не работает ни один из вариантов кодов? То есть сниппет выполняется, но ничего не вставляется, хотя в буфере строка есть(кроме одиночного случая, о чем отписался). Если делаю руками, то все нормально.
Очень нужно, я вижу возможность осуществить задуманное только через буфер обмена, а ничего не работает.
Плюс, может подскажете, как кользоваться параметром oncontextmenu, открывает контекстное меню там, гме мой текущий указатель при тестировании. Как мне сделать, чтобы потом клацнул "Вставить"?
Огромное спасибо за ответ!
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
Плюс, может подскажете, как кользоваться параметром oncontextmenu, открывает контекстное меню там, гме мой текущий указатель при тестировании. Как мне сделать, чтобы потом клацнул "Вставить"?
Так нельзя.
Перед вставкой убедитесь что в текстовом поле курсор выставлен.
 

confirm2315

Новичок
Регистрация
26.01.2015
Сообщения
27
Благодарностей
10
Баллы
3
Делал экшены click, onclick, focus, select, click+focus, onclick+focus и т.д. все вариации.
Или Вы имеете ввиду, что у меня должен быть реальный курсор там, куда я хочу вставить текст при тестировании?
Если да, то все равно не действует, перед выполнением кода ставил курсор на поле, кликал и не убирал, все равно эффекта 0.
При этом в буфер экшеном
Код:
System.Windows.Forms.Clipboard.Clear();
System.Windows.Forms.Clipboard.SetText(project.Variables["url"].Value);
прописывает. Потом идут две экшена click и focus, после чего идет код:
Код:
if(instance.ActiveTab.IsBusy) instance.ActiveTab.WaitDownloading();
lock(SyncObjects.InputSyncer)
{
    Emulator.ActiveWindow(instance.FormTitle);
    System.Windows.Forms.Clipboard.SetText(project.Variables["url"].Value);
    System.Windows.Forms.SendKeys.SendWait("^v");
}
System.Threading.Thread.Sleep(1000);
Одновременно с началом первого экшена навожу и кликаю по полю, с минимальной человеческой погрешностью. К выполнению последнего кода секунду как клик был произведен мною.
 

Bot_Sculptor

Client
Регистрация
11.06.2012
Сообщения
787
Благодарностей
239
Баллы
43
---
 
Последнее редактирование:

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