Эмуляция спецкнопки

Eng: Hot-key simulation

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

Для надежности рекомендуется использовать элемент в контейнере Присоединиться к приложению. Подключаемое приложение указывается в контейнере.

Свойства

Символ * в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.

Группа «Новое ядро»

‼️ Значения этих свойств учитываются, только если установлен чекбокс Новое ядро.

Предоставляют возможность выбрать клавиши для эмулирования:

  1. Новое ядро [Boolean] — признак использования нового ядра для взаимодействия с операционной системой. Установите галочку, если новое ядро нужно использовать. По умолчанию галочка снята.

  2. Основная кнопка [LTools.Common.Model.VirtualKey] — клавиша, которая будет эмулирована. По умолчанию NONE — не задана. Щелкните выпадающий список, чтобы выбрать клавишу. Пример: VK_A — клавиша А. См. полное описание значений.

  3. Модификатор [LTools.Common.Model.VirtualKey] — кнопка-модификатор, которая позволяет добавить к основной клавише дополнительные функции (например, Ctrl, Shift, Alt). По умолчанию NONE — не задана. Щелкните выпадающий список, чтобы выбрать модификатор. Пример: CONTROL. См. полное описание значений.

  4. Дополнительная кнопка [LTools.Common.Model.VirtualKey] — вторая клавиша в комбинации, если она требуется. По умолчанию NONE — клавиша не задана. Щелкните выпадающий список, чтобы выбрать значение. Пример: ESCAPE. См. полное описание значений.

Группа «Процесс»

‼️ Значения этих свойств проигнорируются, если установлен чекбокс Новое ядро.

Предназначены для указания комбинации клавиш для эмуляции:

  1. Спецкнопки [String] — Эмулируемые спецкнопки. По умолчанию "{ENTER}". С полным перечнем спецкнопок можно ознакомиться на сайте Microsoft.

    Убедитесь, что установлен Режим без кода (выкл). Иначе могут возникнуть непредвиденные символы.

  2. Асинхронный [Boolean] — определяет тип ввода: синхронный или асинхронный. По умолчанию галочка не установлена — используется синхронный ввод. Отличия:

    • Синхронный — в этом режиме кнопки нажимаются одновременно. Например, если нужно нажать Ctrl + A, то обе клавиши активируются в один момент времени.

    • Асинхронный — в этом режиме между последовательными нажатиями происходит пауза. Например, при задержке в 500 миллисекунд будет сначала нажата первая клавиша, а через 500 мс — вторая.

  3. Пауза* [Int32] — пауза в миллисекундах до и после нажатия кнопки. По умолчанию 500.

  4. Таймаут* [Int32] — предельное время ожидания завершения процесса в миллисекундах. По умолчанию 10000.

Пример эмуляции

Пример для эмуляции комбинации клавиш Ctrl + A.

С использованием Нового ядра:

  • Новое ядро: Включено

  • Основная кнопка: VK_A

  • Модификатор: CONTROL

С использованием Спецкнопки:

  • Новое ядро: Выключено

  • Спецкнопки: "^A"

Пример использования

На странице Learning доступен RPA-проект, демонстрирующий работу с элементом:

  1. Скачайте архив со всеми обучающими материалами.

  2. Распакуйте архив и откройте в Студии проект StudioActivities.

  3. Выберите процесс StudioActivities > Ru > Рабочий стол > Эмуляция спецкнопки.ltw для просмотра.

Только код

Пример использования элемента в процессе с типом Только код (Pure code):

LTools.Desktop.DesktopApp app = LTools.Desktop.DesktopApp.Init(wf, null, "Test_*", 20000, true, LTools.Desktop.Model.DesktopTypes.UIAUTOMATION);
app.SetFocus("{\"Name\":\"\",\"AutomationID\":\"txtbxSample\",\"ClassName\":\"TextBox\",\"AUIProperties\":[],\"TextSearchMode\":0,\"IsRoot\":false,\"IsQuickSearch\":false}");
LTools.Desktop.DesktopApp.HotKeySimulate(wf, "{ENTER}");

Полезные материалы

  1. Приложение 1. Кнопки для эмулирования - описание значений для свойств Основная кнопка, Модификатор и Дополнительная кнопка.

Last updated