KeyDown, события KeyUp
Возникают последовательно, когда пользователь нажимает и отпускает клавишу. KeyDown возникает, когда пользователь нажимает клавишу. KeyUp возникает, когда пользователь отпускает клавишу.
Синтаксис
Частный вложенныйобъект _KeyDown( ByValKeyCodeAs MSForms.ReturnInteger, ByValShiftAs fmShiftState)
Частный вложенныйобъект _KeyUp( ByValKeyCodeAs MSForms.ReturnInteger, ByValShiftAs fmShiftState)
Синтаксис событий KeyDown и KeyUp состоит из следующих частей:
Part | Описание |
---|---|
object | Обязательно. Допустимое имя объекта. |
KeyCode | Обязательно. Целое число, представляющее код клавиши, нажатой или отпущенной. |
Shift | Обязательно. Состояние клавиш SHIFT, CTRL и ALT. |
Settings
Значениями Shift являются:
Константа | Значение | Описание |
---|---|---|
fmShiftMask | 1 | Клавиша SHIFT была нажата. |
fmCtrlMask | 2 | Клавиша CTRL была нажата. |
fmAltMask | 4 | Клавиша ALT была нажата. |
Замечания
Событие KeyDown возникает, когда пользователь нажимает клавишу в работающей форме, когда эта форма или элемент управления на ней находятся в фокусе. События KeyDown и KeyPress циклически чередуются, пока пользователь не отпустит клавишу, что вызывает событие KeyUp. Форма или элемент управления, находящиеся в фокусе, получают все нажатия клавиш. Форма может быть в фокусе, только если на ней нет элементов управления или все ее видимые элементы управления недоступны.
Эти события также возникают при отправке нажатия клавиши в форму или элемент управления с помощью действия SendKeys в макросе или инструкции SendKeys в Visual Basic.
События KeyDown и KeyUp обычно используются для распознавания или для различия следующих клавиш:
Расширенные клавиши знаков, такие как функциональные клавиши.
Навигационные клавиши, такие как HOME, END, PAGEUP, PAGEDOWN, СТРЕЛКА ВВЕРХ, СТРЕЛКА ВНИЗ, СТРЕЛКА ВПРАВО, СТРЕЛКА ВПРАВО И TAB.
Сочетание клавиш и стандартных клавиатурных модификаторов (SHIFT, CTRL или ALT).
Клавиши цифр числовой панели и клавиатуры.
События KeyDown и KeyUp не происходят при следующих обстоятельствах:
Пользователь нажимает клавишу ВВОД в форме с помощью командной кнопки, для свойства по умолчанию которой задано значение True.
Пользователь нажимает клавишу ESC на форме с помощью командной кнопки, для свойства Cancel которой задано значение True.
События KeyDown и KeyPress возникают при нажатии или передаче клавиши ANSI. Событие KeyUp возникает после любого события для элемента управления, вызванного нажатием или передачей клавиши. Если нажатие клавиши вызывает переход фокуса с одного элемента управления на другой элемент управления, событие KeyDown возникает для первого элемента управления, а для второго элемента управления возникают события KeyPress и KeyUp.
Последовательность событий клавиатуры:
- KeyDown
- KeyPress
- KeyUp
Примечание.
События KeyDown и KeyUp применяются только для форм и элементов управления на форме. Для интерпретации знаков ANSI или для поиска знака ANSI, соответствующего нажатой клавиши, используйте событие KeyPress.
См. также
- Константы ключевого кода
- примеры Microsoft Forms
- Справочник по Microsoft Forms
- основные понятия Microsoft Forms
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.