Shift+Home ?

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Подскажите как сэмулировать нажатие Shift+Home ?
C#:
instance.ActiveTab.KeyEvent("home","press","shift");
Так не работает.
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Необходимо выделить строку. Обычно это делается с помощью сочетаний клавишь Shift+Home, при этом кегель должен стоять в конце строки.
Но сделать это не получается, т.к. не срабатывает это сочетание клавиш из кода. Если нажимать руками, то срабатывает.
2017-06-26 (1).png
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 189
Благодарностей
5 830
Баллы
113
В синтаксие C# имменно так обозначается клавиша HOME ?
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
В синтаксие C# имменно так обозначается клавиша HOME ?
Она пишется с большой буквы.
У вас документация расходиться с майкросовтовской:

https://help.zennolab.com/en/v5/zennoposter/5.9.9/webframe.html#topic321.html
тут клавиша shift используется как "shift"

В документации майкрософт клавиши шифт называются "LeftShift" и "RightShift".
https://msdn.microsoft.com/en-us/library/system.windows.input.key.aspx

Вобщем одни неоднозначности.
Я как только не писал - не работает и все.
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 189
Благодарностей
5 830
Баллы
113
Не каждое сочетание получится эмулировать и не на всех сайтах. Может вам лучше просто спарсить эту строку текста?
 

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63
Спасибо, но нет. Проблема не с парсингом. Проблема с тем что когда выделяешь текст, появляется меню для разметки. Вот мне и надо выделить текст чтобы это меню появилось. Можно было бы вызвать средствами JS, но он там очень мудреный.
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 189
Благодарностей
5 830
Баллы
113
Спасибо, но нет. Проблема не с парсингом. Проблема с тем что когда выделяешь текст, появляется меню для разметки. Вот мне и надо выделить текст чтобы это меню появилось. Можно было бы вызвать средствами JS, но он там очень мудреный.
Так вам получается надо просто дернуть меню разметки. Вполне возможно это можно сделать и другим событием.
 

Lord_Alfred

Client
Регистрация
09.10.2015
Сообщения
3 916
Благодарностей
3 852
Баллы
113
На ПКМ меню не появляется? Или оно работает только на выделение?

Возможно, что поможет вот такой способ выделения через JS: https://learn.javascript.ru/range-textrange-selection#selection (см. пример ниже на той странице с выделением "бабули")
 
  • Спасибо
Реакции: surrealmix

surrealmix

Client
Регистрация
07.03.2013
Сообщения
715
Благодарностей
409
Баллы
63

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28
Я делал через возврат в начало строки - после добавления текста эмулировал {home} средствами Зенно, затем в C#: instance.ActiveTab.KeyEvent("End", "press", "shift");
И все - меню у меня появляется. С home почему-то не работало, по-моему именно выделение назад как раз и не работало. А обязательно именно в конце строки стоять?
Просто нажать home и потом со shift нажать end это по сути тоже самое что и home со shift но в обратную сторону с лишним действием.
 
Последнее редактирование:

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