Key, KeyDown, KeyUp

Эти команды имитируют нажатия. К ним можно добавлять модификаторы (например, левые или правые Shift, Alt, Ctrl).


Синтаксис

<Key имя [имя [имя [имя...]]]>

<KeyDown имя [имя [имя [имя...]]]>

<KeyUp имя [имя [имя [имя...]]]>


Параметры

Имя - наименование клавиатурного сокращения. Нужно указать не менее одного. Обычно нет причин указывать больше четырёх:

<Key LShift LAlt LCtrl F3>


Однако программа даёт возможность указать больше клавиш, если вам это необходимо.

Также ключевыми словами %Trigger% и %TriggerMainKey% вы можете указать кнопки, которые были нажаты для вызова этой горячей клавиши.


Примечания

Эти команды нажимают и отпускают клавиши:

  • Key нажимает и сразу отпускает клавишу.
  • KeyDown нажимает и удерживает клавишу.
  • KeyUp отпускает клавишу.

Чтобы сымитировать нормальное нажатие, используйте Key. Чтобы сымитировать удержание клавиши в нажатом состоянии (также, как вы это делаете, заставляя бежать персонажа в игре), используйте KeyDown, а потом KeyUp.

Следующий пример показывает, как эти команды отличаются:

<Key RShift RAlt RCtrl F3>

Этот код заставит HotkeyNet выполнить действия следующем порядке:

  • нажатие и удержание правого Shift
  • нажатие и удержание правого Alt
  • нажатие и удержание правого Ctrl
  • нажатие и удержание F3
  • отпускание F3
  • отпускание правого Ctrl
  • отпускание правого Alt
  • отпускание правого Shift

Действия выделены цветом, чтобы показать, что делают другие команды. KeyDown работает почти также, как и Key, только KeyDown выполняет действия, выделенные красным цветом. Команда KeyUp тоже похожа на Key, но выполняет действия, выделенные жёлтым.


Ситуации с применением KeyDown и KeyUp

KeyDown и KeyUp чаще всего применяются для движения в играх, когда персонаж бежит столько времени, сколько вы удерживаете нажатым триггер. Более подробно это описывается на странице Основы написания скриптов HotkeyNet.

KeyDown и KeyUp почти всегда используются вместе. Если передать окну команду KeyDown без передачи вскоре команды KeyUp, окно решит, что клавиша постоянно нажата.


Разница между Key и Text

Три разновидности команды Key имитируют нажатия клавиш. Вы применяете их вместе с клавиатурными сокращениями. Команда Text передаёт текст. Её вы применяете для печатания символов. Например:

<Key Backspace>

нажимает и отпускает клавишу Backspace. Но:

<Text Backspace>

печатает слово "Backspace".

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

<Key 5>

<Text 5>

В подобных ситуациях используйте команду Text вместо Key, потому что она немного быстрее.


Примеры

<Key Enter>

<KeyDown Alt Y>

<Key LShift LAlt Backspace>

<KeyUp Shift F1>

<Key LAlt RCtrl NumpadEnter>

<KeyDown Ctrl Alt Shift Home>

 


Связанные элементы