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>