- Ввод с клавиатуры (начало работы с Win32 и C++)
- Коды ключей
- Сообщения Key-Down и Key-Up
- Символьные сообщения
- Прочие сообщения клавиатуры
- Состояние клавиатуры
- Значения клавиш
- Специальные значения
- Клавиши-модификаторы
- Пробельные клавиши
- Навигационные клавиши
- Клавиши редактирования
- Клавиши интерфейса пользователя (UI)
- Клавиши устройства
- IME и клавиши композиции
- Обычные IME клавиши
- Только корейские клавиатуры
- Только японские клавиатуры
- Dead keycodes for Linux
- Функциональные клавиши
- Телефонные клавиши
- Мультимедийные клавиши
- Клавиши управления звуком
- Клавиши управления ТВ
- Клавиши медиа-контроллера
- Клавиши распознавания речи
- Клавиши документа
- Клавиши приложений
- Клавиши управления браузером
- Клавиши цифрового блока
- Found a content problem with this page?
Ввод с клавиатуры (начало работы с Win32 и C++)
Клавиатура используется для нескольких различных типов ввода, в том числе:
- Ввод символов. Текст, который пользователь вводит в документ или поле ввода.
- Сочетания клавиш. Росчерки ключей, вызывающие функции приложения; Например, нажмите клавиши CTRL+O, чтобы открыть файл.
- Системные команды. Росчерки клавиш, вызывающие системные функции; например, ALT+TAB для переключения окон.
При вводе с клавиатуры важно помнить, что росчерк клавиши не совпадает с символом. Например, нажатие клавиши A может привести к любому из следующих символов.
- а
- Объект
- á (если клавиатура поддерживает объединение диакритических элементов)
Кроме того, если клавиша ALT удерживается, нажатие клавиши A создает клавиши ALT+A, которую система вообще не рассматривает как символ, а как системную команду.
Коды ключей
При нажатии клавиши оборудование создает код сканирования. Коды сканирования различаются от одной клавиатуры к следующей, и существуют отдельные коды сканирования для событий нажатия клавиши вверх и вниз. Вы почти никогда не будете заботиться о кодах сканирования. Драйвер клавиатуры преобразует коды сканирования в коды виртуальных ключей. Коды виртуальных ключей не зависят от устройства. Нажатие клавиши A на любой клавиатуре создает тот же код виртуального ключа.
Как правило, коды виртуальных ключей не соответствуют кодам ASCII или любому другому стандарту кодировки символов. Это очевидно, если вы думаете об этом, так как один и тот же ключ может создавать разные символы (a, A, á) и некоторые ключи, такие как ключи функций, не соответствуют ни одному символу.
При этом следующие коды виртуальных ключей сопоставляют с эквивалентами ASCII:
- От 0 до 9 ключей = ASCII ‘0’ – ‘9’ (0x30 – 0x39)
- A-Z keys = ASCII ‘A’ – ‘Z’ (0x41 – 0x5A)
В некоторых отношениях это сопоставление к сожалению, потому что вы никогда не должны рассматривать коды виртуальных ключей как символы по причинам, рассмотренным.
Файл заголовка WinUser.h определяет константы для большинства кодов виртуальных ключей. Например, код виртуального ключа для клавиши СТРЕЛКА ВЛЕВО VK_LEFT ( 0x25). Полный список кодов виртуальных ключей см. в разделе «Коды виртуальных ключей«. Константы не определены для кодов виртуальных ключей, соответствующих значениям ASCII. Например, код виртуального ключа для ключа A 0x41, но нет константы с именем VK_A. Вместо этого просто используйте числовое значение.
Сообщения Key-Down и Key-Up
При нажатии клавиши окно с фокусом клавиатуры получает одно из следующих сообщений.
Сообщение WM_SYSKEYDOWN указывает системный ключ, который является росчерком ключа, который вызывает системную команду. Существует два типа системного ключа:
Клавиша F10 активирует строку меню окна. Различные сочетания клавиш ALT вызывают системные команды. Например, alt+TAB переключается в новое окно. Кроме того, если в окне есть меню, клавиша ALT можно использовать для активации пунктов меню. Некоторые сочетания клавиш ALT ничего не делают.
Все остальные росчерки ключей считаются несистемными ключами и создают сообщение WM_KEYDOWN . Сюда входят ключи функций, отличные от F10.
При освобождении ключа система отправляет соответствующее сообщение о ключе:
Если вы удерживаете клавишу достаточно долго, чтобы запустить функцию повторения клавиатуры, система отправляет несколько сообщений вниз, а затем одно сообщение вверх.
Во всех четырех сообщениях клавиатуры, рассмотренных до сих пор, параметр wParam содержит код виртуального ключа ключа. Параметр lParam содержит некоторые прочие сведения, упакованные в 32 бита. Обычно информация в lParam не требуется. Один из флагов, которые могут быть полезны, — это бит 30, флаг «Предыдущее состояние ключа», который имеет значение 1 для повторяющихся сообщений с ключом вниз.
Как подразумевает имя, росчерки системных ключей в первую очередь предназначены для использования операционной системой. Если вы перехватываете сообщение WM_SYSKEYDOWN , вызовите DefWindowProc после этого. В противном случае вы заблокируйте обработку команды операционной системой.
Символьные сообщения
Росчерки клавиш преобразуются в символы с помощью функции TranslateMessage , которую мы впервые видели в модуле 1. Эта функция проверяет сообщения с помощью клавиш и преобразует их в символы. Для каждого создаваемого символа функция TranslateMessage помещает сообщение WM_CHAR или WM_SYSCHAR в очередь сообщений окна. Параметр wParam сообщения содержит символ UTF-16.
Как вы можете догадаться, WM_CHAR сообщения создаются из WM_KEYDOWN сообщений, а WM_SYSCHAR сообщения создаются из WM_SYSKEYDOWN сообщений. Например, предположим, что пользователь нажимает клавишу SHIFT, за которой следует клавиша A. При условии стандартной раскладки клавиатуры вы получите следующую последовательность сообщений:
WM_KEYDOWN: SHIFT
WM_KEYDOWN: A
WM_CHAR: «A»
С другой стороны, сочетание ALT+P создаст следующее:
WM_SYSKEYDOWN: VK_MENU
WM_SYSKEYDOWN: 0x50
WM_SYSCHAR: «p»
WM_SYSKEYUP: 0x50
WM_KEYUP: VK_MENU
(Код виртуального ключа для ключа ALT называется VK_MENU по историческим причинам.)
Сообщение WM_SYSCHAR указывает системный символ. Как и в случае с WM_SYSKEYDOWN, обычно это сообщение следует передавать непосредственно в DefWindowProc. В противном случае можно мешать стандартным системным командам. В частности, не рассматривайте WM_SYSCHAR как текст, введенный пользователем.
Сообщение WM_CHAR — это то, что обычно считается символьным вводом. Тип данных для символа — wchar_t, представляющий символ Юникода UTF-16. Ввод символов может включать символы за пределами диапазона ASCII, особенно с раскладками клавиатуры, которые обычно используются за пределами США. Вы можете попробовать различные раскладки клавиатуры, установив региональную клавиатуру, а затем используя функцию экранной клавиатуры.
Пользователи также могут установить редактор метода ввода (IME) для ввода сложных сценариев, таких как японские символы, со стандартной клавиатурой. Например, используя японский IME для ввода символа катаканы カ (ka), вы можете получить следующие сообщения:
WM_KEYDOWN: VK_PROCESSKEY (ключ процесса IME)
WM_KEYUP: 0x4B
WM_KEYDOWN: VK_PROCESSKEY
WM_KEYUP: 0x41
WM_KEYDOWN: VK_PROCESSKEY
WM_CHAR: カ
WM_KEYUP: VK_RETURN
Некоторые сочетания клавиш CTRL превратятся в управляющие символы ASCII. Например, ctrl+A преобразуется в символ ASCII CTRL-A (SOH) (значение ASCII 0x01). Для ввода текста обычно следует отфильтровать управляющие символы. Кроме того, не используйте WM_CHAR для реализации сочетаний клавиш. Вместо этого используйте WM_KEYDOWN сообщения; или даже лучше использовать таблицу акселератора. Таблицы акселератора описаны в следующем разделе таблицы ускорителей.
В следующем коде отображаются основные сообщения клавиатуры в отладчике. Попробуйте воспроизвести с разными сочетаниями нажатия клавиш и посмотрите, какие сообщения создаются.
Не забудьте включить wchar.h или еще swprintf_s будет неопределенным.
Прочие сообщения клавиатуры
Некоторые другие сообщения клавиатуры можно безопасно игнорировать большинством приложений.
- Сообщение WM_DEADCHAR отправляется для сочетания ключа, например диакритического ключа. Например, на испанской клавиатуре введите акцент (‘), за которым следует E, создает символ é. WM_DEADCHAR отправляется для символа акцента.
- Сообщение WM_UNICHAR устарело. Это позволяет программам ANSI получать входные данные символов Юникода.
- Символ WM_IME_CHAR отправляется, когда IME преобразует последовательность нажатия клавиш в символы. Он отправляется в дополнение к обычному WM_CHAR сообщению.
Состояние клавиатуры
Сообщения клавиатуры управляются событиями. То есть вы получите сообщение, когда происходит что-то интересное, например нажатие клавиши, и сообщение сообщает вам, что только что произошло. Но вы также можете проверить состояние ключа в любое время, вызвав функцию GetKeyState .
Например, рассмотрим, как определить сочетание клавиши ALT и щелчка мыши слева. Вы можете отслеживать состояние клавиши ALT, прослушивая сообщения и сохраняя флаг, но GetKeyState спасает вас от проблем. Когда вы получите сообщение WM_LBUTTONDOWN , просто вызовите GetKeyState следующим образом:
Сообщение GetKeyState принимает код виртуального ключа в качестве входных данных и возвращает набор битовых флагов (фактически всего два флага). Значение 0x8000 содержит битовый флаг, который проверяет, нажата ли в данный момент клавиша.
Большинство клавиатур имеют две клавиши ALT, слева и справа. В предыдущем примере проверяется, нажат ли один из них. Вы также можете использовать GetKeyState для различения левых и правых экземпляров клавиш ALT, SHIFT или CTRL. Например, следующий код проверяет, нажата ли правая клавиша ALT.
Функция GetKeyState интересна, так как она сообщает о состоянии виртуальной клавиатуры. Это виртуальное состояние основано на содержимом очереди сообщений и обновляется при удалении сообщений из очереди. Когда программа обрабатывает сообщения окна, GetKeyState предоставляет моментальный снимок клавиатуры во время постановки каждого сообщения в очередь. Например, если последнее сообщение в очереди было WM_LBUTTONDOWN, GetKeyState сообщает о состоянии клавиатуры в тот момент, когда пользователь нажал кнопку мыши.
Так как GetKeyState основан на очереди сообщений, он также игнорирует ввод клавиатуры, отправленный в другую программу. Если пользователь переключается на другую программу, все нажатия клавиш, отправляемые в программу, игнорируются GetKeyState. Если вы действительно хотите знать немедленное физическое состояние клавиатуры, существует функция для этого: GetAsyncKeyState. Однако для большинства кодов пользовательского интерфейса правильная функция — GetKeyState.
Значения клавиш
В таблицах ниже перечислены стандартные значения различных категорий клавиш с объяснением того, для чего этот клавиша обычно используется. Соответствующие виртуальные коды клавиш для распространённых платформ включены там, где они доступны.
Узнайте, как использовать эти пары «ключ-значение» в JavaScript с помощью KeyboardEvent.key
Специальные значения
Значения клавиш имеющих особое значение, кроме идентификации определённой клавиши или символа.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Unidentified» | разное | разное | разное | разное |
Клавиши-модификаторы
Специальные клавиши-модификаторы, которые используются для генерации специальных символов или вызывают особые действия при использовании в сочетании с другими клавишами. Например: Shift и Control , или lock-клавиши, такие как Caps Lock и NumLock .
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Alt» [5] | Клавиша Alt (Alternative) . | VK_MENU (0x12) VK_LMENU (0xA4) VK_RMENU (0xA5) | kVK_Option (0x3A) kVK_RightOption (0x3D) | GDK_KEY_Alt_L (0xFFE9) GDK_KEY_Alt_R (0xFFEA) Qt::Key_Alt (0x01000023) | KEYCODE_ALT_LEFT (57) KEYCODE_ALT_RIGHT (58) |
«AltGraph» [5] | Клавиша AltGr или AltGraph (Альтернативная графика). Enables the ISO Level 3 shift modifier (where Shift is the level 2 modifier). | GDK_KEY_Mode_switch (0xFF7E) GDK_KEY_ISO_Level3_Shift (0xFE03) GDK_KEY_ISO_Level3_Latch (0xFE04) GDK_KEY_ISO_Level3_Lock (0xFE05) GDK_KEY_ISO_Level5_Shift (0xFE11) GDK_KEY_ISO_Level5_Latch (0xFE12) GDK_KEY_ISO_Level5_Lock (0xFE13) Qt::Key_AltGr (0x01001103 Qt::Key_Mode_switch (0x0100117E) | |||
«CapsLock» | Клавиша Caps Lock . Включает и выключает блокировку заглавных букв для последующего ввода. | VK_CAPITAL (0x14) | kVK_CapsLock (0x39) | GDK_KEY_Caps_Lock (0xFFE5) Qt::Key_CapsLock (0x01000024) | KEYCODE_CAPS_LOCK (115) |
«Control» | Клавиша Control , Ctrl , или Ctl . Позволяет вводить управляющие символы. | VK_CONTROL (0x11) VK_LCONTROL (0xA2) VK_RCONTROL (0xA3) | kVK_Control (0x3B) kVK_RightControl (0x3E) | GDK_KEY_Control_L (0xFFE3) GDK_KEY_Control_R (0xFFE4) Qt::Key_Control (0x01000021) | KEYCODE_CTRL_LEFT (113) KEYCODE_CTRL_RIGHT (114) |
«Fn» | Fn (Function modifier) key. Используется для создания функциональной клавиши ( F1 – F15 , например) символы на клавиатуре без выделенной области функциональных клавиш.Часто обрабатывается аппаратно, поэтому для этой клавиши не создаются события. | kVK_Function (0x3F) | KEYCODE_FUNCTION (119) | ||
«FnLock» | Клавиша FnLock или F-Lock (Function Lock) .Переключает режим функциональных клавиш, описанный «Fn» вкл. и выкл. Часто обрабатывается аппаратно, поэтому для этой клавиши не создаются события. | ||||
«Hyper» [4] | Клавиша Hyper . | GDK_KEY_Hyper_L (0xFFED) GDK_KEY_Hyper_R (0xFFEE) Qt::Key_Hyper_L (0x01000056) Qt::Key_Hyper_R (0x01000057) | |||
«Meta» [1] | Клавиша Meta . Позволяет вводить специальные команды. Это клавиши с лого Windows , или Command или ⌘ на клавиатуре Mac . | VK_LWIN (0x5B) VK_RWIN (0x5C) | kVK_Command (0x37) kVK_RightCommand (0x36) | GDK_KEY_Meta_L (0xFFE7) GDK_KEY_Meta_R (0xFFE8) Qt::Key_Meta (0x01000022) | KEYCODE_META_LEFT (117) KEYCODE_META_RIGHT (118) |
«NumLock» | Клавиша NumLock (Number Lock). Переключает цифровую клавиатуру между вводом номера и другим режимом (часто стрелки направления). | VK_NUMLOCK (0x90) | GDK_KEY_Num_Lock (0xFF7F) Qt::Key_NumLock (0x01000025) | KEYCODE_NUM_LOCK (143) | |
«ScrollLock» [2] | Клавиша Scroll Lock Переключает между режимами прокрутки и перемещения курсора. | VK_SCROLL (0x91) | GDK_KEY_Scroll_Lock (0xFF14) Qt::Key_ScrollLock (0x01000026) | KEYCODE_SCROLL_LOCK (116) | |
«Shift» | Клавиша Shift . Изменяет нажатия клавиш, чтобы разрешить ввод букв в верхнем (или другом) регистре, а также для поддержки ввода знаков препинания и других специальных символов. | VK_SHIFT (0x10) VK_LSHIFT (0xA0) VK_RSHIFT (0xA1) | kVK_Shift (0x38) kVK_RightShift (0x3C) | GDK_KEY_Shift_L (0xFFE1) GDK_KEY_Shift_R (0xFFE2) Qt::Key_Shift (0x01000020) | KEYCODE_SHIFT_LEFT (59) KEYCODE_SHIFT_RIGHT (60) |
«Super» [4] | Клавиша Super . | GDK_KEY_Super_L (0xFFEB) GDK_KEY_Super_R (0xFFEC) Qt::Key_Super_L (0x01000053) Qt::Key_Super_R (0x01000054) | |||
«Symbol» | Клавиша-модификатор Symbol (есть на некоторых виртуальных клавиатурах). | KEYCODE_SYM (63) [3] | |||
«SymbolLock» | Клавиша Symbol Lock |
[1] В Internet Explorer (проверено на релизах 9 и 11), а также во всех версиях Firefox, клавиша Windows сообщается как «OS» а не «Meta» . Это будет изменено в Firefox в баг 1232918. Пока это не будет исправлено, эти ключи возвращаются как «OS» в Firefox: VK_LWIN (0x5B) и VK_RWIN (0x5C) в Windows, и GDK_KEY_Super_L (0xFFEB) , GDK_KEY_Super_R (0xFFEC) , GDK_KEY_Hyper_L (0xFFED) , и GDK_KEY_Hyper_R (0xFFEE) в Linux.
[2] Internet Explorer (проверено на релизах 9 и 11) сообщает «Scroll» вместо «ScrollLock» для клавиши Scroll Lock .
[3] Firefox не поддерживает клавишу Symbol до версии Firefox 37.
[4] Firefox генерирует значение ключа «OS » для клавиш Super и Hyper вместо «Super» и «Hyper» .
[5] Chrome 67 и Firefox 63 теперь правильно интерпретируют правую клавишу Alt для раскладок клавиатуры, которые сопоставляют эту клавишу с AltGr . См. Дополнительные сведения об ошибке баг 900750 и Chrome bug 25503 для подробных деталей.
Пробельные клавиши
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Enter» | Клавиша Enter или ↵ (иногда помечается как Return ). | VK_RETURN (0x0D) | kVK_Return (0x24) kVK_ANSI_KeypadEnter (0x4C) kVK_Powerbook_KeypadEnter (0x34) | GDK_KEY_Return (0xFF0D) GDK_KEY_KP_Enter (0xFF8D) GDK_KEY_ISO_Enter (0xFE34) GDK_KEY_3270_Enter (0xFD1E) Qt::Key_Return (0x01000004) Qt::Key_Enter (0x01000005) | KEYCODE_ENTER (66) KEYCODE_NUMPAD_ENTER (160) KEYCODE_DPAD_CENTER (23) |
«Tab» | Горизонтальная табуляция, Tab . | VK_TAB (0x09) | kVK_Tab (0x30) | GDK_KEY_Tab (0xFF09) GDK_KEY_KP_Tab (0xFF89) GDK_KEY_ISO_Left_Tab (0xFE20) Qt::Key_Tab (0x01000001) | KEYCODE_TAB (61) |
» » [1] | Пробел, Space Bar . | VK_SPACE (0x20) | kVK_Space (0x31) | KEYCODE_SPACE (62) |
[1] Старые браузеры могут вернуть «Spacebar» вместо » » для клавиши Space Bar . Firefox делал это до версии 37, как в Internet Explorer 9, 10, и 11.
Навигационные клавиши
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«ArrowDown» [1] | Клавиша со стрелкой «вниз». | VK_DOWN (0x28) | kVK_DownArrow (0x7D) | GDK_KEY_Down (0xFF54) GDK_KEY_KP_Down (0xFF99) Qt::Key_Down (0x01000015) | KEYCODE_DPAD_DOWN (20) |
«ArrowLeft» [1] | Клавиша со стрелкой «влево» . | VK_LEFT (0x25) | kVK_LeftArrow (0x7B) | GDK_KEY_Left (0xFF51) GDK_KEY_KP_Left (0xFF96) Qt::Key_Left (0x01000012) | KEYCODE_DPAD_LEFT (21) |
«ArrowRight» [1] | Клавиша со стрелкой «вправо». | VK_RIGHT (0x27) | kVK_RightArrow (0x7C) | GDK_KEY_Right (0xFF53) GDK_KEY_KP_Right (0xFF98) Qt::Key_Right (0x01000014) | KEYCODE_DPAD_RIGHT (22) |
«ArrowUp» [1] | Клавиша со стрелкой «вверх». | VK_UP (0x26) | kVK_UpArrow (0x7E) | GDK_KEY_Up (0xFF52) GDK_KEY_KP_Up (0xFF97) Qt::Key_Up (0x01000013) | KEYCODE_DPAD_UP (19) |
«End» | Клавиша End . Перемещает в конец контента. | VK_END (0x23) | kVK_End (0x77) | GDK_KEY_End (0xFF57) GDK_KEY_KP_End (0xFF9C) Qt::Key_End (0x01000011) | KEYCODE_MOVE_END (123) |
«Home» | Клавиша Home . В начало контента. | VK_HOME (0x24) | kVK_Home (0x73) | GDK_KEY_Home (0xFF50) GDK_KEY_KP_Home (0xFF95) Qt::Key_Home (0x01000010) | KEYCODE_MOVE_HOME (122) |
«PageDown» | Клавиша Page Down (или PgDn ). Прокручивает вниз или отображает следующую страницу содержимого. | VK_NEXT (0x22) | kVK_PageDown (0x79) | GDK_KEY_Page_Down (0xFF56) GDK_KEY_KP_Page_Down (0xFF9B) Qt::Key_PageDown (0x01000017) | KEYCODE_PAGE_DOWN (93) |
«PageUp» | Клавиша Page Up (или PgUp ). Прокручивает вверх или отображает предыдущую страницу содержимого. | VK_PRIOR (0x21) | kVK_PageUp (0x74) | GDK_KEY_Page_Up (0xFF55) GDK_KEY_KP_Page_Up (0xFF9A) Qt::Key_PageUp (0x01000016) | KEYCODE_PAGE_UP (92) |
[1] Internet Explorer, Edge (16 и ранее), и Firefox (36 и ранее) используют «Left» , «Right» , «Up» , и «Down» вместо «ArrowLeft» , «ArrowRight» , «ArrowUp» , и «ArrowDown» .
Клавиши редактирования
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Backspace» | The Backspace key. This key is labeled Delete on Mac keyboards. | VK_BACK (0x08) | kVK_Delete (0x33) | GDK_KEY_BackSpace (0xFF08) Qt::Key_Backspace (0x01000003) | KEYCODE_DEL (67) |
«Clear» | The Clear key. Removes the currently selected input. | VK_CLEAR (0x0C) VK_OEM_CLEAR (0xFE) | kVK_ANSI_KeypadClear (0x47) | GDK_KEY_Clear (0xFF0B) Qt::Key_Clear (0x0100000B) | KEYCODE_CLEAR (28) |
«Copy» | The Copy key (on certain extended keyboards). | APPCOMMAND_COPY | GDK_KEY_Copy (0x1008FF57) Qt::Key_Copy (0x010000CF) | ||
«CrSel» [3] | The Cursor Select key, CrSel . | VK_CRSEL (0xF7) | GDK_KEY_3270_CursorSelect (0xFD1C) | ||
«Cut» | The Cut key (on certain extended keyboards). | APPCOMMAND_CUT | GDK_KEY_Cut (0x1008FF58) Qt::Key_Cut (0x010000D0) | ||
«Delete» [2] | Клавиша Delete, Del . | VK_DELETE (0x2E) | kVK_ForwardDelete (0x75) [1] | GDK_KEY_Delete (0xFFFF) GDK_KEY_KP_Delete (0xFF9F) Qt::Key_Delete (0x01000007) | KEYCODE_FORWARD_DEL (112) |
«EraseEof» | Erase to End of Field. Deletes all characters from the current cursor position to the end of the current field. | VK_EREOF (0xF9) | GDK_KEY_3270_ExSelect (0xFD1B) | ||
«ExSel» [4] | The ExSel (Extend Selection) key. | VK_EXSEL (0xF8) | GDK_KEY_3270_ExSelect (0xFD1B) | ||
«Insert» | The Insert key, Ins . Toggles between inserting and overwriting text. | VK_INSERT (0x2D) | GDK_KEY_Insert (0xFF63) GDK_KEY_KP_Insert (0xFF9E) Qt::Key_Insert (0x01000006) | KEYCODE_INSERT (124) | |
«Paste» | Paste from the clipboard. | APPCOMMAND_PASTE | GDK_KEY_Paste (0x1008FF6D) Qt::Key_Paste (0x010000E2) | ||
«Redo» | Redo the last action. | APPCOMMAND_REDO | GDK_KEY_Redo (0xFF66) | ||
«Undo» | Undo the last action. | APPCOMMAND_UNDO | GDK_KEY_Undo (0xFF65) |
[1] On keyboards without a dedicated Del key, the Mac generates the «Delete» value when Fn is pressed in tandem with Delete (which is Backspace on other platforms).
[2] Internet Explorer (tested on release 9 and 11) and Firefox 36 and earlier use «Del» instead of «Delete» for the Del key.
[3] Internet Explorer (tested on release 9 and 11) and Firefox 36 and earlier generate the value «Crsel» instead of «CrSel» when the CrSel key is pressed.
[4] Internet Explorer (tested on release 9 and 11) and Firefox 36 and earlier generate the value «Exsel» instead of «ExSel» when the ExSel key is pressed.
Клавиши интерфейса пользователя (UI)
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Accept» | Клавиша или кнопка Accept , Commit , или OK . Accepts the currently selected option or input method sequence conversion. | VK_ACCEPT (0x1E) | KEYCODE_DPAD_CENTER (23) | ||
«Again» | The Again key. Перевыполняет или повторяет предыдущее действие. | GDK_KEY_Redo (0xFF66) | |||
«Attn» [4] | Клавиша «Внимание» Attn . | VK_OEM_ATTN (0xF0) | GDK_KEY_3270_Attn (0xFD0E) | ||
«Cancel» [1] | Клавиша отмены Cancel . | GDK_KEY_Cancel (0xFF69) | |||
«ContextMenu» [3] | Отображает контекстное меню. Обычно находится между клавишами Windows (или OS ) и Control на правой стороне клавиатуры. | VK_APPS (0x5D) | kVK_PC_ContextMenu (0x6E) | GDK_KEY_Menu (0xFF67) Qt::Key_Menu (0x01000055) | KEYCODE_MENU (82) |
«Escape» [2] | Клавиша отмены Esc . Обычно используется для выходы, отмены, ил выхода из текущей операции. Исторически Escape-символ использовался для подачи сигнала о начале специальной управляющей последовательности символов, называемой «escape-последовательностью». | VK_ESCAPE (0x1B) | kVK_Escape (0x35) | GDK_KEY_Escape (0xFF1B) Qt::Key_Escape (0x01000000) | KEYCODE_ESCAPE (111) |
«Execute» | Клавиша «Выполнить» Execute . | VK_EXECUTE (0x2B) | Qt::Key_Execute (0x01020003) | ||
«Find» | Клавиша «Найти» Find . Открывает интерфейс (обычно диалоговое окно) для выполнения операции поиска. | APPCOMMAND_FIND | GDK_KEY_Find (0xFF68) | ||
«Finish» [5] | Клавиша завершения Finish . | VK_OEM_FINISH (0xF1) | |||
«Help» | Клавиша помощи Help . Открывает или переключает отображение справочной информации. | VK_HELP (0x2F) APPCOMMAND_HELP | kVK_Help (0x72) | GDK_KEY_Help (0xFF6A) Qt::Key_Help (0x01000058) | KEYCODE_HELP (259) |
«Pause» | Клавиша паузы Pause . Приостанавливает текущее приложение или состояние, если это применимо. |
GDK_KEY_Break (0xFF6B)
Qt::Key_Pause (0x01000008)
Qt::Key_Play (0x01020005)
Qt::Key_ZoomIn (0x010000F6)
Qt::Key_ZoomOut (0x010000F7)
[1] В Google Chrome 52, клавиша Cancel ошибочно возвращает значение «Pause» . Исправлено в Chrome 53. (Смотри подробно в Chrome bug 612749.)
[2] В Internet Explorer (проверено в версиях 9 и 11) и Firefox 36 и более ранних, клавиша Esc возвращает значение «Esc» вместо «Escape» .
[3] Internet Explorer (проверено в версиях 9 и 11) и Firefox 36 и более ранних, клавиша контекстного меню возвращает значение «Apps» вместо «ContextMenu» .
[4] Клавиша Attn генерирует значение «Unidentified» в Internet Explorer (проверено в версиях 9 и 11). В Firefox и Google Chrome происходит то же, если только не действует японская раскладка клавиатуры, то в этом случае она генерирует вместо неё «KanaMode» .
[5] Клавиша Finish генерирует значение «Unidentified» в Internet Explorer (проверено в версиях 9 и 11). В Firefox происходит то же, если только не действует японская раскладка клавиатуры, то в этом случае она генерирует вместо неё «Katakana» .
[6] Firefox не поддерживал клавиши «ZoomIn» и «ZoomOut» до Firefox 37.
Клавиши устройства
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«BrightnessDown» | Клавиша уменьшения яркости. Обычно используется для уменьшения яркости дисплея. | GDK_KEY_MonBrightnessDown (0x1008FF03) Qt::Key_MonBrightnessDown (0x010000B3) | KEYCODE_BRIGHTNESS_DOWN (220) | ||
«BrightnessUp» | Клавиша увеличения яркости. Обычно увеличивает яркость дисплея. | GDK_KEY_MonBrightnessUp (0x1008FF02) Qt::Key_MonBrightnessUp (0x010000B2) | KEYCODE_BRIGHTNESS_UP (221) | ||
«Eject» | Клавиша извлечения Eject . Извлекает съёмный носитель (или переключает лоток оптического дисковода, открывая и закрывая его). | GDK_KEY_Eject (0x1008FF2C) Qt::Key_Eject (0x010000B9) | KEYCODE_MEDIA_EJECT (129) | ||
«LogOff» [2] | Клавиша выход из системы LogOff . | GDK_KEY_LogOff (0x1008FF61) Qt::Key_LogOff (0x010000D9) | |||
«Power» | Кнопка или клавиша питания Power для включения и выключения питания. |
GDK_KEY_PowerOff (0x1008FF2A)
Qt::Key_PowerDown (0x0100010B)
Qt::Key_PowerOff (0x010000B7)
GDK_KEY_Print (0xFF61)
GDK_KEY_Sys_Req (0xFF15)
Qt::Key_Print (0x01000009)
Qt::Key_SysReq (0x0100000A)
Qt::Key_Hibernate (0x01000108)
GDK_KEY_Suspend (0x1008FFA7)
GDK_KEY_Sleep (0x1008FF2F)
Qt::Key_Standby (0x01000093)
Qt::Key_Suspend (0x0100010C)
Qt::Key_Sleep (0x01020004)
Qt::Key_WakeUp (0x010000B8)
[1] Клавиша Standby не поддерживается Internet Explorer (проверено в версиях 9 и 11) и Firefox 36 и более ранних, поэтому возвращала «Unidentified» .
[2] До Firefox 37, эта клавиша генерировала значение «Unidentified» .
IME и клавиши композиции
Клавиши, используемые при использовании редактора метода ввода (IME) для ввода текста, который не может быть легко введён с помощью простых нажатий клавиш, например текста на языках, которые имеют больше графем, чем клавиш ввода символов на клавиатуре. Общие примеры включают китайский, японский, корейский и хинди.
Некоторые клавиши являются общими для нескольких языков, в то время как другие существуют только на клавиатурах, ориентированных на определённые языки. Кроме того, не все клавиатуры имеют все эти клавиши.
Обычные IME клавиши
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«AllCandidates» | The All Candidates key, which starts multi-candidate mode, in which multiple candidates are displayed for the ongoing input. | GDK_KEY_MultipleCandidate (0xFF3D Qt::Key_MultipleCandidate (0x0100113D) | |||
«Alphanumeric» | The Alphanumeric key. | VK_OEM_ATTN (0xF0) | GDK_KEY_Eisu_Shift (0xFF2F) GDK_KEY_Eisu_toggle (0xFF30) Qt::Key_Eisu_Shift (0x0100112f) Qt::Key_Eisu_toggle (0x01001130) | ||
«CodeInput» | The Code Input key, which enables code input mode, which lets the user enter characters by typing their code points (their Unicode character numbers, typically). | GDK_KEY_Codeinput (0xFF37) Qt::Key_Codeinput (0x01001137) | |||
«Compose» | The Compose key. | GDK_KEY_Multi_key (0xFF20) [1] Qt::Key_Multi_key (0x01001120) | |||
«Convert» [4] | The Convert key, which instructs the IME to convert the current input method sequence into the resulting character. | VK_CONVERT (0x1C) | GDK_KEY_Henkan (0xFF23) Qt::Key_Henkan (0x01001123) | KEYCODE_HENKAN (214) | |
«Dead» | See Dead keycodes for Linux below | ||||
«FinalMode» | The Final (Final Mode) key is used on some Asian keyboards to enter final mode when using IMEs. | VK_FINAL (0x18) | |||
«GroupFirst» | Switches to the first character group on an ISO/IEC 9995 keyboard. Each key may have multiple groups of characters, each in its own column. Pressing this key instructs the device to interpret keypresses as coming from the first column on subsequent keystrokes. | GDK_KEY_ISO_First_Group (0xFE0C) | |||
«GroupLast» | Switches to the last character group on an ISO/IEC 9995 keyboard. | GDK_KEY_ISO_Last_Group (0xFE0E) | |||
«GroupNext» [4] | Switches to the next character group on an ISO/IEC 9995 keyboard. | GDK_KEY_ISO_Next_Group (0xFE08) | KEYCODE_LANGUAGE_SWITCH (204) | ||
«GroupPrevious» | Switches to the previous character group on an ISO/IEC 9995 keyboard. | GDK_KEY_ISO_Prev_Group (0xFE0A) | |||
«ModeChange» [5] | The Mode Change key. Toggles or cycles among input modes of IMEs. | VK_MODECHANGE (0x1F) | GDK_KEY_Mode_switch (0xFF7E) GDK_KEY_script_switch (0xFF7E) Qt::Key_Mode_switch (0x0100117E) | KEYCODE_SWITCH_CHARSET (95) | |
«NextCandidate» | The Next Candidate function key. Selects the next possible match for the ongoing input. | ||||
«NonConvert» [2] | The NonConvert («Don’t convert») key. This accepts the current input method sequence without running conversion when using an IME. | VK_NONCONVERT (0x1D) | GDK_KEY_Muhenkan (0xFF22) Qt::Key_Muhenkan (0x01001122) | KEYCODE_MUHENKAN (213) | |
«PreviousCandidate» | The Previous Candidate key. Selects the previous possible match for the ongoing input. | GDK_KEY_PreviousCandidate (0xFF3E) Qt::Key_PreviousCandidate (0x0100113E) | |||
«Process» [3] | The Process key. Instructs the IME to process the conversion. | VK_PROCESSKEY (0xE5) | |||
«SingleCandidate» [4] | The Single Candidate key. Enables single candidate mode (as opposed to multi-candidate mode); in this mode, only one candidate is displayed at a time. | GDK_KEY_SingleCandidate (0xFF3C) Qt::Key_SingleCandidate (0x0100113C) |
[1] В X Window System, клавиша Compose называется Multi .
[2] Клавиша NonConvert возвращает значение «Nonconvert» вместо корректного «NonConvert» в Internet Explorer (проверено в версиях 9 и 11) и Firefox версии 36 и более ранних.
[3] Клавиша Process в настоящее время возвращает «Unidentified» в Firefox и Internet Explorer. Google Chrome возвращает значение клавиши так, как если бы IME не использовался.
[4] До Firefox 37, эта клавиша возвращала «Unidentified» .
[5] Firefox генерирует значение «AltGraph» вместо «ModeChange» .
Только корейские клавиатуры
Эти клавиши доступны только на корейских клавиатурах. Существуют и другие клавиши, определённые различными платформами для корейских клавиатур, но они являются наиболее распространёнными и идентифицируются спецификацией событий пользовательского интерфейса.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«HangulMode» | The Hangul (Korean character set) mode key, which toggles between Hangul and English entry modes. | VK_HANGUL (0x15) [1] | GDK_KEY_Hangul (0xFF31) Qt::Key_Hangul (0x01001131) | ||
«HanjaMode» | Selects the Hanja mode, for converting Hangul characters to the more specific Hanja characters. | VK_HANJA (0x19) [1] | GDK_KEY_Hangul_Hanja (0xFF34) Qt::Key_Hangul_Hanja (0x01001134) | ||
«JunjaMode» | Selects the Junja mode, in which Korean is represented using single-byte Latin characters. | VK_JUNJA (0x17) | GDK_KEY_Hangul_Jeonja (0xFF38) Qt::Key_Hangul_Jeonja (0x01001138) |
[1] VK_HANGUL и VK_KANA используют один и тот же числовой код клавиши в Windows, также как VK_HANJA и VK_KANJI .
Только японские клавиатуры
Эти клавиши доступны только на японских клавиатурах.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Eisu» [1] | The Eisu key. This key’s purpose is defined by the IME, but may be used to close the IME. | kVK_JIS_Eisu (0x66) | GDK_KEY_Eisu_toggle (0xFF2F) Qt::Key_Eisu_toggle (0x01001130) | KEYCODE_EISU (212) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Hankaku» [3] | The Hankaku (half-width characters) key. | VK_OEM_AUTO (0xF3) | GDK_KEY_Hankaku (0xFF29) Qt::Key_Hankaku (0x01001129) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Hiragana» | The Hiragana key; selects Kana characters mode. | VK_OEM_COPY (0xF2) | GDK_KEY_Hiragana (0xFF25) Qt::Key_Hiragana (0x01001125) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«HiraganaKatakana» [6] | Toggles between the Hiragana and Katakana writing systems. | GDK_KEY_Hiragana_Katakana (0xFF27) Qt::Key_Hiragana_Katakana (0x01001127) | KEYCODE_KATAKANA_HIRAGANA (215) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«KanaMode» | The Kana Mode (Kana Lock) key. | VK_KANA (0x15) [2] VK_ATTN (0xF6) | GDK_KEY_Kana_Lock (0xFF2D) GDK_KEY_Kana_Shift (0xFF2E) Qt::Key_Kana_Lock (0x0100112D) Qt::Key_Kana_Shift (0x0100112E) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«KanjiMode» | The Kanji Mode key. Enables entering Japanese text using the ideographic characters of Chinese origin. | VK_KANJI (0x19) [2] | kVK_JIS_Kana (0x68) | GDK_KEY_Kanji (0xFF21) Qt::Key_Kanji (0x01001121) | KEYCODE_KANA (218) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Katakana» | The Katakana key. | VK_OEM_FINISH (0xF1) | GDK_KEY_Katakana (0xFF26) Qt::Key_Katakana (0x01001126) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Romaji» [5] | The Romaji key; selects the Roman character set. | VK_OEM_BACKTAB (0xF5) | GDK_KEY_Romaji (0xFF24) Qt::Key_Romaji (0x01001124) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Zenkaku» [4] | The Zenkaku (full width) characters key. | VK_OEM_ENLW (0xF4) | GDK_KEY_Zenkaku (0xFF28) Qt::Key_Zenkaku (0x01001128) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«ZenkakuHanaku» [6] | The Zenkaku/Hankaku (full width/half width) toggle key. | GDK_KEY_Zenkaku_Hankaku (0xFF2A) Qt::Zenkaku_Hankaku (0x0100112A) |
Значение CompositionEvent.data | Символ | Комментарии |
---|---|---|
GDK_KEY_dead_grave (0xFE50) Qt::Key_Dead_Grave (0x01001250) | ` | |
GDK_KEY_dead_acute (0xFE51) Qt::Key_Dead_Acute (0x01001251) | ´ | |
GDK_KEY_dead_circumflex (0xFE52) Qt::Key_Dead_Circumflex (0x01001252) | ˆ | |
GDK_KEY_dead_tilde (0xFE53) Qt::Key_Dead_Tilde (0x01001253) | ˜ | |
GDK_KEY_dead_perispomeni (0xFE53) | ͂ | |
GDK_KEY_dead_macron (0xFE54) Qt::Key_Dead_Macron (0x01001254) | ¯ | |
GDK_KEY_dead_breve (0xFE55) Qt::Key_Dead_Breve (0x01001255) | ˘ | |
GDK_KEY_dead_abovedot (0xFE56) Qt::Key_Dead_Abovedot (0x01001256) | ˙ | |
GDK_KEY_dead_diaeresis (0xFE57) Qt::Key_Dead_Diaeresis (0x01001257) | ¨ | Also called an umlaut. |
GDK_KEY_dead_abovering (0xFE58) Qt::Key_Dead_Abovering (0x01001258) | ˚ | |
GDK_KEY_dead_doubleacute (0xFE59) Qt::Key_Dead_Doubleacute (0x01001259) | ˝ | |
GDK_KEY_dead_caron (0xFE5A) Qt::Key_Dead_Caron (0x0100125A) | ˇ | Also called a háček; used in Czech among other languages. |
GDK_KEY_dead_cedilla (0xFE5B) Qt::Key_Dead_Cedilla (0x0100125B) | ¸ | |
GDK_KEY_dead_ogonek (0xFE5C) Qt::Key_Dead_Ogonek (0x0100125C) | ˛ | Also called a nosinė; used in Polish and Old Irish. |
GDK_KEY_dead_iota (0xFE5D) Qt::Key_Dead_Iota (0x0100125D) | ͅ | Iota subscript. |
GDK_KEY_dead_voiced_sound (0xFE5E) Qt::Key_Dead_Voiced_Sound (0x0100125E) | ゙ | |
GDK_KEY_dead_semivoiced_sound (0xFE5F) Qt::Key_Dead_Semivoiced_Sound (0x0100125F) | ゚ | |
GDK_KEY_dead_belowdot (0xFE60) Qt::Key_Dead_Belowdot (0x01001260) | ̣̣ | |
GDK_KEY_dead_hook (0xFE61) Qt::Key_Dead_Hook (0x01001261) | ̡ | |
GDK_KEY_dead_horn (0xFE62) Qt::Key_Dead_Horn (0x01001262) | ̛ | |
GDK_KEY_dead_stroke (0xFE63) | ̶̶ | |
GDK_KEY_dead_abovecomma (0xFE64) | ̓̓ | |
GDK_KEY_dead_psili (0xFE64) | ᾿ | |
GDK_KEY_dead_abovereversedcomma (0xFE65) | ʽ | |
GDK_KEY_dead_dasia (0xFE65) | ῾ | |
GDK_KEY_dead_doublegrave (0xFE66) | ̏ | |
GDK_KEY_dead_belowring (0xFE67) | ˳ | |
GDK_KEY_dead_belowmacron (0xFE68) | ̱ | |
GDK_KEY_dead_belowcircumflex (0xFE69) | ꞈ | |
GDK_KEY_dead_belowtilde (0xFE6A) | ̰ | |
GDK_KEY_dead_belowbreve (0xFE6B) | ̮ | |
GDK_KEY_dead_belowdiaeresis (0xFE6C) | ̤ | |
GDK_KEY_dead_invertedbreve (0xFE6D) | ̯ | |
GDK_KEY_dead_belowcomma (0xFE6E) | ̦ | |
GDK_KEY_dead_currency (0xFE6F) | ||
GDK_KEY_dead_a (0xFE80) | ||
GDK_KEY_dead_A (0xFE81) | ||
GDK_KEY_dead_e (0xFE82) | ||
GDK_KEY_dead_E (0xFE83) | ||
GDK_KEY_dead_i (0xFE84) | ||
GDK_KEY_dead_I (0xFE85) | ||
GDK_KEY_dead_o (0xFE86) | ||
GDK_KEY_dead_O (0xFE87) | ||
GDK_KEY_dead_u (0xFE88) | ||
GDK_KEY_dead_U (0xFE89) | ||
GDK_KEY_dead_small_schwa (0xFE8A) | ə | |
GDK_KEY_dead_capital_schwa (0xFE8B) | Ə | |
GDK_KEY_dead_greek (0xFE8C) |
Функциональные клавиши
Хотя разные платформы поддерживают разное количество функциональных клавиш общего назначения, таких как F1 – F12 (or F1 – F10 , or F1 – F15 , etc.), первые несколько конкретно определены следующим образом.
Если доступно больше функциональных клавиш, их имена продолжают представленный шаблон, продолжая увеличивать числовую часть имени каждой клавиши, так что, например, «F24» это валидное значение клавиши.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«F1» | Клавиша F1 . | VK_F1 (0x70) | kVK_F1 (0x7A) | GDK_KEY_F1 (0xFFBE) GDK_KEY_KP_F1 (0xFF91) Qt::Key_F1 (0x01000030) | KEYCODE_F1 (131) |
«F2» | Клавиша F2 . | VK_F2 (0x71) | kVK_F2 (0x78) | GDK_KEY_F2 (0xFFBF) GDK_KEY_KP_F2 (0xFF92) Qt::Key_F2 (0x01000031) | KEYCODE_F2 (132) |
«F3» | Клавиша F3 . | VK_F3 (0x72) | kVK_F3 (0x63) | GDK_KEY_F3 (0xFFC0) GDK_KEY_KP_F3 (0xFF93) Qt::Key_F3 (0x01000032) | KEYCODE_F3 (133) |
«F4» | Клавиша F4 . | VK_F4 (0x73) | kVK_F4 (0x76) | GDK_KEY_F4 (0xFFC1) GDK_KEY_KP_F4 (0xFF94) Qt::Key_F4 (0x01000033) | KEYCODE_F4 (134) |
«F5» | Клавиша F5 . | VK_F5 (0x74) | kVK_F5 (0x60) | GDK_KEY_F5 (0xFFC2) Qt::Key_F5 (0x01000034) | KEYCODE_F5 (135) |
«F6» | Клавиша F6 . | VK_F6 (0x75) | kVK_F6 (0x61) | GDK_KEY_F6 (0xFFC3) Qt::Key_F6 (0x01000035) | KEYCODE_F6 (136) |
«F7» | Клавиша F7 . | VK_F7 (0x76) | kVK_F7 (0x62) | GDK_KEY_F7 (0xFFC4) Qt::Key_F7 (0x01000036) | KEYCODE_F7 (137) |
«F8» | Клавиша F8 . | VK_F8 (0x77) | kVK_F8 (0x64) | GDK_KEY_F8 (0xFFC5) Qt::Key_F8 (0x01000037) | KEYCODE_F8 (138) |
«F9» | Клавиша F9 . | VK_F9 (0x78) | kVK_F9 (0x65) | GDK_KEY_F9 (0xFFC6) Qt::Key_F9 (0x01000038) | KEYCODE_F9 (139) |
«F10» | Клавиша F10 . | VK_F10 (0x79) | kVK_F10 (0x6D) | GDK_KEY_F10 (0xFFC7) Qt::Key_F10 (0x01000039) | KEYCODE_F10 (140) |
«F11» | Клавиша F11 . | VK_F11 (0x7A) | kVK_F11 (0x67) | GDK_KEY_F11 (0xFFC8) Qt::Key_F11 (0x0100003A) | KEYCODE_F11 (141) |
«F12» | Клавиша F12 . | VK_F12 (0x7B) | kVK_F12 (0x6F) | GDK_KEY_F12 (0xFFC9) Qt::Key_F12 (0x0100003B) | KEYCODE_F12 (142) |
«F13» | Клавиша F13 . | VK_F13 (0x7C) | kVK_F13 (0x69) | GDK_KEY_F13 (0xFFCA) Qt::Key_F13 (0x0100003C) | KEYCODE_F13 |
«F14» | Клавиша F14 . | VK_F14 (0x7D) | kVK_F14 (0x6B) | GDK_KEY_F14 (0xFFCB) Qt::Key_F1 4 (0x0100003D) | KEYCODE_F14 |
«F15» | Клавиша F15 . | VK_F15 (0x7E) | kVK_F15 (0x71) | GDK_KEY_F15 (0xFFCC) Qt::Key_F1 5 (0x0100003E) | KEYCODE_F15 |
«F16» | Клавиша F16 . | VK_F16 (0x7F) | kVK_F16 (0x6A) | GDK_KEY_F16 (0xFFCD) Qt::Key_F1 6 (0x0100003F) | KEYCODE_F16 |
«F17» | Клавиша F17 . | VK_F17 (0x80) | kVK_F17 (0x40) | GDK_KEY_F17 (0xFFCE) Qt::Key_F1 7 (0x01000040) | KEYCODE_F17 |
«F18» | Клавиша F18 . | VK_F18 (0x81) | kVK_F18 (0x4F) | GDK_KEY_F18 (0xFFCF) Qt::Key_F1 8 (0x01000041) | KEYCODE_F18 |
«F19» | Клавиша F19 . | VK_F19 (0x82) | kVK_F19 (0x50) | GDK_KEY_F19 (0xFFD0) Qt::Key_F1 9 (0x01000042) | KEYCODE_F19 |
«F20» | Клавиша F20 . | VK_F20 (0x83) | kVK_F20 (0x5A) | GDK_KEY_F20 (0xFFD1) Qt::Key_F20 (0x01000043) | KEYCODE_F20 |
«Soft1» | Первая функциональная клавиша общего назначения. | Qt::Key_Context1 (0x01100000) | |||
«Soft2» | Вторая функциональная клавиша общего назначения. | Qt::Key_Context2 (0x01100001) | |||
«Soft3» | Третья функциональная клавиша общего назначения. | Qt::Key_Context3 (0x01100002) | |||
«Soft4» | Четвёртая функциональная клавиша общего назначения. | Qt::Key_Context4 (0x01100003) |
Телефонные клавиши
Эти клавиши представляют собой кнопки, которые обычно существуют на современных смартфонах.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«AppSwitch» | Представляет список недавно использованных приложений, который позволяет пользователю быстро переключаться между приложениями. | KEYCODE_APP_SWITCH (181) | |||
«Call» | Кнопка вызова Call . Набирает номер, который был введён. | Qt::Key_Call (0x01100004) | KEYCODE_CALL (5) | ||
«Camera» | Кнопка камеры Camera . Включает камеру. | Qt::Key_Camera (0x01100020) | KEYCODE_CAMERA (27) | ||
«CameraFocus» | Кнопка фокусировки Focus . Фокусирует камеру. | Qt::Key_CameraFocus (0x01100021) | KEYCODE_FOCUS (80) | ||
«EndCall» | Кнопка завершения вызова End Call или Hang Up . | Qt::Key_Hangup (0x01100005) | KEYCODE_ENDCALL (6) | ||
«GoBack» | Кнопка «Назад» Back . | KEYCODE_BACK (4) | |||
«GoHome» [1] | Кнопка Home . Возвращает пользователя на главный экран телефона (обычно это средство запуска приложений). | KEYCODE_HOME (3) | |||
«HeadsetHook» | Клавиша гарнитуры Headset Hook . Обычно это кнопка на гарнитуре, которая используется для отбоя вызовов и воспроизведения или приостановки мультимедиа. | Qt::Key_ToggleCallHangup (0x01100007) | KEYCODE_HEADSETHOOK (79) | ||
«LastNumberRedial» | Клавиша перенабора номера Redial . Набирает последний набранный номер. | Qt::Key_LastNumberRedial (0x01100009) | |||
«Notification» | Клавиша уведомления Notification . | KEYCODE_NOTIFICATION (83) | |||
«MannerMode» | Кнопка, которая циклически переключается между режимами уведомлений: бесшумный, вибрировать, звонить и так далее. | KEYCODE_MANNER_MODE (205) | |||
«VoiceDial» | Клавиша Voice Dial . Запускает голосовой набор. | Qt::Key_VoiceDial (0x01100008) | KEYCODE_VOICE_ASSIST (231) |
[1] До Firefox 37, кнопка Home генерирует значение «Exit» . Начиная с Firefox 37, генерирует «MozHomeScreen» .
Мультимедийные клавиши
Мультимедийные клавиши — это дополнительные кнопки или клавиши для управления мультимедийными устройствами, которые есть на некоторых клавиатурах.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«ChannelDown» | Переключается на предыдущий канал. | APPCOMMAND_MEDIA_CHANNEL_DOWN | Qt::Key_ChannelDown (0x01000119) | KEYCODE_CHANNEL_DOWN (167) | |
«ChannelUp» | Переключается на следующий канал. | APPCOMMAND_MEDIA_CHANNEL_UP | Qt::Key_ChannelUp (0x01000118) | KEYCODE_CHANNEL_UP (166) | |
«MediaFastForward» [2] | Запускает, продолжает или увеличивает скорость быстрой перемотки мультимедиа вперёд. | APPCOMMAND_MEDIA_FAST_FORWARD | GDK_KEY_AudioForward (0x1008FF97) Qt:Key_AudioForward (0x01000102) | KEYCODE_MEDIA_FAST_FORWARD (90) | |
«MediaPause» | APPCOMMAND_MEDIA_PAUSE | GDK_KEY_AudioPause (0x1008FF31) Qt::Key_MediaPause (0x1000085) | KEYCODE_MEDIA_PAUSE (127) | ||
«MediaPlay» | Запускает или продолжает воспроизведение мультимедиа с нормальной скоростью, если ещё не делает этого. В противном случае не имеет эффекта. | APPCOMMAND_MEDIA_PLAY | GDK_KEY_AudioPlay (0x1008FF14) | KEYCODE_MEDIA_PLAY (126) | |
«MediaPlayPause» | Переключение между воспроизведением и приостановкой текущего медиафайла. | VK_MEDIA_PLAY_PAUSE (0xB3) APPCOMMAND_MEDIA_PLAY_PAUSE | Qt::Key_MediaTogglePlayPause (0x1000086) | KEYCODE_MEDIA_PLAY_PAUSE (85) | |
«MediaRecord» | Запуск или возобновление записи медиафайла. | APPCOMMAND_MEDIA_RECORD | GDK_KEY_AudioRecord (0x1008FF1C) Qt::Key_MediaRecord (0x01000084) | KEYCODE_MEDIA_RECORD (130) | |
«MediaRewind» | Запуск, продолжение или увеличение скорости перемотки медиафайла. | APPCOMMAND_MEDIA_REWIND | GDK_KEY_AudioRewind (0x1008FF3E) Qt::Key_AudioRewind (0x010000C5) | KEYCODE_MEDIA_REWIND (89) | |
«MediaStop» | Останавливает текущую медиа-активность (такую как воспроизведение, запись, пауза, перемотка вперёд или назад). Не действует, если медиафайл уже остановлен. | VK_MEDIA_STOP (0xB2) APPCOMMAND_MEDIA_STOP | GDK_KEY_AudioStop (0x1008FF15) Qt::Key_MediaStop (0x01000081) | KEYCODE_MEDIA_STOP (86) | |
«MediaTrackNext» [1] | Seeks to the next media or program track. | VK_MEDIA_NEXT_TRACK (0xB0) APPCOMMAND_MEDIA_NEXTTRACK | GDK_KEY_AudioNext (0x1008FF17) Qt::Key_MediaNext (0x01000083) | KEYCODE_MEDIA_NEXT (87) | |
«MediaTrackPrevious» [1] | Seeks to the previous media or program track. | VK_MEDIA_PREV_TRACK (0xB1) APPCOMMAND_MEDIA_PREVIOUSTRACK | GDK_KEY_AudioPrev (0x1008FF16) Qt::Key_MediaPrevious (0x01000082) | KEYCODE_MEDIA_PREVIOUS (88) |
[1] Internet Explorer, Edge, и Firefox (36 и более ранние) используют «MediaNextTrack» и «MediaPreviousTrack» вместо «MediaTrackNext» и «MediaTrackPrevious» .
[2] До Firefox 37, Firefox генерировал значение «FastFwd» на некоторых платформах и «Unidentified» на других вместо «MediaFastForward» .
Клавиши управления звуком
Эти мультимедийные клавиши используются специально для управления звуком.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«AudioBalanceLeft» | Регулирует баланс звука влево. | VK_AUDIO_BALANCE_LEFT | |||
«AudioBalanceRight» | Регулирует баланс звука вправо. | VK_AUDIO_BALANCE_RIGHT | |||
«AudioBassDown» | Уменьшает количество басов. | APPCOMMAND_BASS_DOWN | |||
«AudioBassBoostDown» | Уменьшает степень усиления басов или циклически перемещается вниз по набору режимов или состояний усиления басов. | VK_BASS_BOOST_DOWN | |||
«AudioBassBoostToggle» | Включает и выключает усиление басов. | APPCOMMAND_BASS_BOOST | |||
«AudioBassBoostUp» | Увеличивает степень усиления басов или циклически перемещается вверх по набору режимов или состояний усиления басов. | VK_BASS_BOOST_UP | |||
«AudioBassUp» | Увеличивает количество басов. | APPCOMMAND_BASS_UP | |||
«AudioFaderFront» | Смещает регулятор уровня сигнала вперёд. | VK_FADER_FRONT | |||
«AudioFaderRear» | Смещает регулятор уровня сигнала назад. | VK_FADER_REAR | |||
«AudioSurroundModeNext» | Выбор следующего доступного режима объёмного звучания. | VK_SURROUND_MODE_NEXT | |||
«AudioTrebleDown» | Уменьшает количество высоких частот. | APPCOMMAND_TREBLE_DOWN | |||
«AudioTrebleUp» | Отключает звук. | APPCOMMAND_TREBLE_UP | |||
«AudioVolumeDown» [1] | Уменьшает громкость звука. | VK_VOLUME_DOWN (0xAE) APPCOMMAND_VOLUME_DOWN | kVK_VolumeDown (0x49) | GDK_KEY_AudioLowerVolume (0x1008FF11) Qt::Key_VolumeDown (0x01000070) | KEYCODE_VOLUME_DOWN (25) |
«AudioVolumeMute» [1] | Отключает звук. | VK_VOLUME_MUTE (0xAD) APPCOMMAND_VOLUME_MUTE | kVK_Mute (0x4A) | GDK_KEY_AudioMute (0x1008FF12) Qt::Key_VolumeMute (0x01000071) | KEYCODE_VOLUME_MUTE (164) |
«AudioVolumeUp» [1] | Увеличивает громкость звука. | VK_VOLUME_UP (0xAF) APPCOMMAND_VOLUME_UP | kVK_VolumeUp (0x48) | GDK_KEY_AudioRaiseVolume (0x1008FF13) Qt::Key_VolumeUp (0x01000072) | KEYCODE_VOLUME_UP (24) |
«MicrophoneToggle» | Включает и выключает микрофон. | APPCOMMAND_MIC_ON_OFF_TOGGLE | |||
«MicrophoneVolumeDown» | Уменьшает громкость входного сигнала микрофона. | APPCOMMAND_MICROPHONE_VOLUME_DOWN | Qt::Key_MicVolumeDown (0x0100011E) | ||
«MicrophoneVolumeMute» | Отключает микрофонный вход. | APPCOMMAND_MICROPHONE_VOLUME_MUTE | GDK_KEY_AudioMicMute (0x1008FFB2) Qt::Key_MicMute (0x01000113) | KEYCODE_MUTE (91) | |
«MicrophoneVolumeUp» | Увеличивает громкость входного сигнала микрофона. | APPCOMMAND_MICROPHONE_VOLUME_UP | Qt::Key_MicVolumeUp (0x0100011D) |
[1] Internet Explorer, Edge, и Firefox (48 и более ранние) используют «VolumeUp» , «VolumeDown» , и «VolumeMute» вместо «AudioVolumeUp» , «AudioVolumeDown» , и «AudioVolumeMute» . В Firefox 49 они были обновлены в соответствии с последней спецификацией. Старые имена все ещё используются в Boot to Gecko.
Клавиши управления ТВ
Эти ключевые значения представляют собой кнопки или клавиши на телевизионных устройствах, компьютерах или телефонах с поддержкой телевидения.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«TV» [1] | Переключает в режим просмотра ТВ. | KEYCODE_TV (170) | |||
«TV3DMode» | Включает и выключает режим 3D TV. | KEYCODE_3D_MODE (206) | |||
«TVAntennaCable» | Переключение между антенным и кабельным входами. | KEYCODE_TV_ANTENNA_CABLE (242) | |||
«TVAudioDescription» | Включает и выключает режим описания звука. | KEYCODE_TV_AUDIO_DESCRIPTION (252) | |||
«TVAudioDescriptionMixDown» | Уменьшает громкость микширования аудиоописаний; уменьшает громкость аудиоописаний относительно звука программы. | KEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN (254) | |||
«TVAudioDescriptionMixUp» | Увеличивает громкость микширования аудиоописаний; увеличивает громкость аудиоописаний относительно звука программы. | KEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP (253) | |||
«TVContentsMenu» | Отображает или скрывает мультимедийное содержимое, доступное для воспроизведения (это может быть руководство по каналам, показывающее программы, транслируемые в данный момент, или список мультимедийных файлов для воспроизведения). | KEYCODE_TV_CONTENTS_MENU (256) | |||
«TVDataService» | Отображает или скрывает сервисное меню данных телевизора. | KEYCODE_TV_DATA_SERVICE (230) | |||
«TVInput» [2] | Переключает источник сигнала на внешнем телевизоре. | KEYCODE_TV_INPUT (178) | |||
«TVInputComponent1» | Переключает на вход «Компонент 1». | KEYCODE_TV_INPUT_COMPONENT_1 (249) | |||
«TVInputComponent2» | Переключает на вход «Компонент 2.» | KEYCODE_TV_INPUT_COMPONENT_2 (250) | |||
«TVInputComposite1» | Переключает на вход «Композитный 1». | KEYCODE_TV_INPUT_COMPOSITE_1 (247) | |||
«TVInputComposite2» | Переключает на вход «Композитный 2.» | KEYCODE_TV_INPUT_COMPOSITE_2 (248) | |||
«TVInputHDMI1» | Переключает на вход «HDMI 1». | KEYCODE_TV_INPUT_HDMI_1 (243) | |||
«TVInputHDMI2» | Переключает на вход «HDMI 2.» | KEYCODE_TV_INPUT_HDMI_2 (244) | |||
«TVInputHDMI3» | Переключает на вход «HDMI 3.» | KEYCODE_TV_INPUT_HDMI_3 (245) | |||
«TVInputHDMI4» | Переключает на вход «HDMI 4.» | KEYCODE_TV_INPUT_HDMI_4 (246) | |||
«TVInputVGA1» | Переключает на вход «VGA 1.» | KEYCODE_TV_INPUT_VGA_1 (251) | |||
«TVMediaContext» | Клавиша контекстного меню мультимедиа. | KEYCODE_TV_MEDIA_CONTEXT_MENU (257) | |||
«TVNetwork» | Включение и выключение сетевого подключения телевизора. | KEYCODE_TV_NETWORK (241) | |||
«TVNumberEntry» | Переведите телевизор в режим ввода номера. | KEYCODE_TV_NUMBER_ENTRY (234) | |||
«TVPower» [2] | Кнопка питания устройства. | KEYCODE_TV_POWER (177) | |||
«TVRadioService» | Кнопка радио | KEYCODE_TV_RADIO_SERVICE (232) | |||
«TVSatellite» | Кнопка спутника | KEYCODE_TV_SATELLITE (237) | |||
«TVSatelliteBS» | Broadcast Satellite button. | KEYCODE_TV_SATELLITE_BS (238) | |||
«TVSatelliteCS» | Communication Satellite button. | KEYCODE_TV_SATELLITE_CS (239) | |||
«TVSatelliteToggle» | Переключение между доступными спутниками. | KEYCODE_TV_SATELLITE_SERVICE (240) | |||
«TVTerrestrialAnalog» | Выбирает услугу аналогового наземного телевидения (аналоговый кабельный или антенный приём). | KEYCODE_TV_TERRESTRIAL_ANALOG (235) | |||
«TVTerrestrialDigital» | Выбирает услугу цифрового наземного телевидения (цифровой кабельный или антенный приём). | KEYCODE_TV_TERRESTRIAL_DIGITAL (236) | |||
«TVTimer» | Кнопка программирования таймера. | KEYCODE_TV_TIMER_PROGRAMMING (258) |
[1] В Firefox добавлена надлежащая поддержка для клавиши «TV» в Firefox 37; до этого, эта клавиша генерировала значение «Live» .
[2] Эти клавиши возвращали «Unidentified» до Firefox 37.
Клавиши медиа-контроллера
Поскольку современные пульты дистанционного управления для мультимедийных устройств часто включают кнопки, помимо базовых элементов управления, описанных в другом месте в этом документе, ключевые значения определены для широкого набора этих дополнительных кнопок.
Приведённые ниже значения частично получены из ряда технических характеристик бытовой электроники:
Примечание: Пульт дистанционного управления обычно содержит кнопки, значения которых уже определены где-то ещё, например Мультимедийные клавиши или Клавиши управления звуком. Значения этих кнопок будут соответствовать тому, что задокументировано в этих таблицах.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«AVRInput» [3] | Изменяет источник сигнала на внешнем аудио / видео ресивере (AVR). | KEYCODE_AVR_INPUT (182) | |||
«AVRPower» [3] | Переключает питание внешнего блока AVR. | KEYCODE_AVR_POWER (181) | |||
«ColorF0Red» [3] | Универсальная функциональная клавиша мультимедиа красного цвета. Она имеет индекс 0 среди цветных клавиш. | VK_COLORED_KEY_0 | KEYCODE_PROG_RED (183) | ||
«ColorF1Green» [3] | Универсальная функциональная клавиша мультимедиа зелёного цвета. Она имеет индекс 1 среди цветных клавиш. | VK_COLORED_KEY_1 | KEYCODE_PROG_GREEN (184) | ||
«ColorF2Yellow» [3] | Универсальная функциональная клавиша мультимедиа жёлтого цвета. Она имеет индекс 2 среди цветных клавиш. | VK_COLORED_KEY_2 | KEYCODE_PROG_YELLOW (185) | ||
«ColorF3Blue» [3] | Универсальная функциональная клавиша мультимедиа синего цвет. Она имеет индекс 3 среди цветных клавиш. | VK_COLORED_KEY_3 | KEYCODE_PROG_BLUE (186) | ||
«ColorF4Grey» | Универсальная функциональная клавиша мультимедиа серого цвета. Она имеет индекс 4 среди цветных клавиш. | VK_COLORED_KEY_4 | KEYCODE_PROG_GREY | ||
«ColorF5Brown» | Универсальная функциональная клавиша мультимедиа коричневого цвета. Она имеет индекс 5 среди цветных клавиш. | VK_COLORED_KEY_5 | KEYCODE_PROG_BROWN | ||
«ClosedCaptionToggle» | Включает и выключает скрытые субтитры. | VK_CC | KEYCODE_CAPTIONS (175) | ||
«Dimmer» | Регулирует яркость устройства, переключаясь между двумя уровнями яркости или переключаясь между несколькими уровнями яркости. | VK_DIMMER | GDK_KEY_BrightnessAdjust (0x1008FF3B) | ||
«DisplaySwap» | Циклически переключает источники видео | VK_DISPLAY_SWAP | |||
«DVR» | Переключает источник входного сигнала на цифровой видеорегистратор (DVR). | KEYCODE_DVR (173) | |||
«Exit» | Кнопка «Выход» для выхода из текущего приложения или меню. | VK_EXIT | Qt::Key_Exit (0x0102000a) | ||
«FavoriteClear0» | Очищает первый слот списка избранного. | VK_CLEAR_FAVORITE_0 | |||
«FavoriteClear1» | Очищает второй слот списка избранного. | VK_CLEAR_FAVORITE_1 | |||
«FavoriteClear2» | Очищает третий слот списка избранного. | VK_CLEAR_FAVORITE_2 | |||
«FavoriteClear3» | Очищает четвёртый слот списка избранного. | VK_CLEAR_FAVORITE_3 | |||
«FavoriteRecall0» | Выбирает (вызывает) программу или содержимое, хранящееся в первом слоте списка избранного. | VK_RECALL_FAVORITE_0 | |||
«FavoriteRecall1» | Выбирает (вызывает) программу или содержимое, хранящееся во втором слоте списка избранного. | VK_RECALL_FAVORITE_1 | |||
«FavoriteRecall2» | Выбирает (вызывает) программу или содержимое, хранящееся в третьем слоте списка избранного. | VK_RECALL_FAVORITE_2 | |||
«FavoriteRecall3» | Выбирает (вызывает) программу или содержимое, хранящееся в четвёртом слоте списка избранного. | VK_RECALL_FAVORITE_3 | |||
«FavoriteStore0» | Сохраняет текущую программу или контент в первый слот списка избранного. | VK_STORE_FAVORITE_0 | |||
«FavoriteStore1» | Сохраняет текущую программу или контент во второй слот списка избранного. | VK_STORE_FAVORITE_1 | |||
«FavoriteStore2» | Сохраняет текущую программу или контент в третий слот списка избранного. | VK_STORE_FAVORITE_2 | |||
«FavoriteStore3» | Сохраняет текущую программу или контент в четвёртый слот списка избранного. | VK_STORE_FAVORITE_3 | |||
«Guide» | Переключает отображение программы или содержимого, содержащего руководство. | VK_GUIDE | Qt::Key_Guide (0x0100011A) | KEYCODE_GUIDE (172) | |
«GuideNextDay» | Если руководство отображается в данный момент, эта кнопка указывает руководству отобразить содержимое на следующий день. | VK_NEXT_DAY | |||
«GuidePreviousDay» | Если руководство отображается в данный момент, эта кнопка указывает руководству отобразить содержимое предыдущего дня. | VK_PREV_DAY | |||
«Info» | Переключает отображение информации о текущем выбранном содержимом, программе или медиа. | VK_INFO | Qt::Key_Info (0x0100011B) | KEYCODE_INFO (165) | |
«InstantReplay» | Указывает устройству выполнить мгновенное перевоспроизведение (обычно это некоторая форма возврата на короткий промежуток времени с последующим воспроизведением, возможно, но обычно не в замедленном режиме). | VK_INSTANT_REPLAY | |||
«Link» | Открывает содержимое, связанное с текущей программой, если это возможно и доступно. | VK_LINK | |||
«ListProgram» | Список текущей программы. | VK_LIST | |||
«LiveContent» | Переключает отображение списка доступного в данный момент live-содержимого или программ. | VK_LIVE | |||
«Lock» | Блокирует и разблокирует текущее выбранное содержимое или программу. | VK_LOCK | |||
«MediaApps» | Представляет список мультимедийных приложений, таких как программы просмотра фотографий, аудио- и видеоплееры, а также игры. [1] | VK_APPS | |||
«MediaAudioTrack» | Клавиша звуковой дорожки. | GDK_KEY_AudioCycleTrack (0x1008FF9B) Qt::Key_AudioCycleTrack (0x01000106) | KEYCODE_MEDIA_AUDIO_TRACK (222) | ||
«MediaLast» | Возврат к последнему просмотренному содержимому, программе или другому медиафайлу. | VK_LAST | Qt::Key_MediaLast (0x0100FFFF) | KEYCODE_LAST_CHANNEL (229) | |
«MediaSkipBackward» | Переход назад к предыдущему содержимому или программе. | KEYCODE_MEDIA_SKIP_BACKWARD | |||
«MediaSkipForward» | Переход к следующему содержимому или программе. | VK_SKIP | KEYCODE_MEDIA_SKIP_FORWARD | ||
«MediaStepBackward» | Переход назад к предыдущему содержимому или программе. | KEYCODE_MEDIA_STEP_BACKWARD | |||
«MediaStepForward» | Переход к следующему содержимому или программе. | KEYCODE_MEDIA_SKIP_FORWARD | |||
«MediaTopMenu» | Кнопка верхнего меню. Открывает главное меню носителя (например, для диска DVD или Blu-Ray). | Qt::Key_TopMenu (0x0100010A) | KEYCODE_MEDIA_TOP_MENU | ||
«NavigateIn» | Переход в подменю или параметр. | KEYCODE_NAVIGATE_IN | |||
«NavigateNext» | Переход к следующему элементу. | KEYCODE_NAVIGATE_NEXT | |||
«NavigateOut» | Переход из текущего экрана или меню. | KEYCODE_NAVIGATE_OUT | |||
«NavigatePrevious» | Переход к предыдущему элементу. | KEYCODE_NAVIGATE_PREVIOUS | |||
«NextFavoriteChannel» | Циклически переходит на следующий канал в списке избранного. | VK_NEXT_FAVORITE_CHANNEL | |||
«NextUserProfile» | Циклически переходит к следующему сохранённому профилю пользователя, если эта функция поддерживается и существует несколько профилей. | VK_USER | |||
«OnDemand» | Открывает пользовательский интерфейс для выбора содержимого или программ по запросу для просмотра. | VK_ON_DEMAND | |||
«Pairing» | Запускает процесс сопряжения пульта дистанционного управления с управляемым устройством. | KEYCODE_PAIRING (225) | |||
«PinPDown» | Кнопка для перемещения изображения «картинка в картинке» вниз. | VK_PINP_DOWN | |||
«PinPMove» | Кнопка для управления перемещением изображения «картинка в картинке». | VK_PINP_MOVE | |||
«PinPToggle» | Включает и выключает отображение изображения в «картинка в картинке». | VK_PINP_TOGGLE | |||
«PinPUp» | Кнопка для перемещения изображения «картинка в картинке» вверх. | VK_PINP_UP | |||
«PlaySpeedDown» | Уменьшает скорость воспроизведения мультимедиа. | VK_PLAY_SPEED_DOWN | |||
«PlaySpeedReset» | Возвращает нормальную скорость воспроизведения мультимедиа. | VK_PLAY_SPEED_RESET | |||
«PlaySpeedUp» | Увеличивает скорость воспроизведения мультимедиа. | VK_PLAY_SPEED_UP | |||
«RandomToggle» | Включает и выключает случайные медиафайлы (также известно как «режим случайного воспроизведения»). | VK_RANDOM_TOGGLE | GDK_KEY_AudioRandomPlay (0x1008FF99) | ||
«RcLowBattery» | Код, отправляемый при низком заряде батареи пульта ДУ. Это вообще не соответствует физической кнопке/клавише. | VK_RC_LOW_BATTERY | |||
«RecordSpeedNext» | Циклически переключает доступные скорости записи на носитель. | VK_RECORD_SPEED_NEXT | |||
«RfBypass» | Включает и выключает режим пропуска радиочастотного (RF) входа. В режиме пропуска РЧ входной сигнал передаётся непосредственно на выход РЧ без какой-либо обработки или фильтрации. | VK_RF_BYPASS | |||
«ScanChannelsToggle» | Включает и выключает режим сканирования каналов. Это режим, который автоматически переключает каналы, пока пользователь не остановит сканирование. | VK_SCAN_CHANNELS_TOGGLE | |||
«ScreenModeNext» | Циклически переключает доступные режимы отображения экрана. | VK_SCREEN_MODE_NEXT | |||
«Settings» | Включает и выключает отображение экрана настроек устройства. | VK_SETTINGS | Qt::Key_Settings (0x0100011C) | KEYCODE_SETTINGS | |
«SplitScreenToggle» | Включает и выключает режим разделения экрана. | VK_SPLIT_SCREEN_TOGGLE | GDK_KEY_SplitScreen ( 0x1008FF7D) Qt::Key_SplitScreen (0x010000ED) | ||
«STBInput» [3] | Переключение между источниками сигнала на внешней приставке (STB). | KEYCODE_STB_INPUT (180) | |||
«STBPower» [3] | Включает и выключает внешний STB. | KEYCODE_STB_POWER (179) | |||
«Subtitle» | Включает и выключает отображение субтитров, если они доступны. | VK_SUBTITLE | GDK_KEY_Subtitle (0x1008FF9A) | KEYCODE_CAPTIONS (175) | |
«Teletext» | Включает и выключает отображение [телетекста](https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BB%D0%B5%D1%82%D0%B5%D0%BA%D1%81%D1%82), если доступно. | VK_TELETEXT | KEYCODE_TV_TELETEXT (233) | ||
«VideoModeNext» [3] | Перебирает доступные видеорежимы. | VK_VIDEO_MODE_NEXT | GDK_KEY_Next_VMode (0x1008FE22) | ||
«Wink» | Заставляет устройство идентифицировать себя каким-либо образом, например, мигает светом, на короткое время меняет яркость световых индикаторов или издаёт звуковой сигнал. | VK_WINK | |||
«ZoomToggle» [2] | Переключает между полноэкранным и масштабированным отображением содержимого или иным образом изменяет уровень увеличения. | VK_ZOOM (0xFB) | Qt::Key_Zoom (0x01020006) | KEYCODE_TV_ZOOM_MODE (255) |
[1] Не путайте клавишу медиа-контроллера VK_APPS с клавишей Windows VK_APPS , которая также известна как VK_CONTEXT_MENU . Эта клавиша возвращает значение «ContextMenu» .
[2] Internet Explorer (проверено в версиях 9 и 11) и Firefox 36 и более ранние определяли кнопку переключения масштаба как «Zoom» . В Firefox 37 исправлено на «ZoomToggle» .
[3] Эти клавиши возвращали «Unidentified» до Firefox 37.
Клавиши распознавания речи
Эти специальные мультимедийные клавиши используются для управления функциями распознавания речи.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«SpeechCorrectionList» [1] | Представляет список возможных исправлений неверно определённого слова. | APPCOMMAND_CORRECTION_LIST | |||
«SpeechInputToggle» [2] | Переключение между режимом диктовки и режимом команд/управления. Это позволяет механизму обработки речи знать, интерпретировать ли произносимые слова как вводимый текст или как команды. | APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE |
[1] В Windows команда APPCOMMAND_CORRECTION_LIST генерирует значение «Unidentified» в Firefox.
[2] В Windows команда APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE генерирует значение «Unidentified» в Firefox.
Клавиши документа
Эти клавиши управляют документами. В спецификации они включены в другие наборы клавиш(например, мультимедийные), но разумнее выделять их в собственную категорию.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Close» [1] | Закрывает текущий документ или сообщение. Не должен выходить из приложения. | APPCOMMAND_CLOSE | GDK_KEY_Close (0x1008FF56) Qt::Key_Close (0x010000CE) | KEYCODE_MEDIA_CLOSE (128) | |
«New» [1] | Создаёт новый документ или сообщение. | APPCOMMAND_NEW | GDK_KEY_New (0x1008FF68) Qt::Key_New (0x01000120) | ||
«Open» [1] | Открывает существующий документ или сообщение. | APPCOMMAND_OPEN | GDK_KEY_Open (0x1008FF6B) Qt::Key_Open (0x01000121) | ||
«Print» | Печатает текущий документ или сообщение. | APPCOMMAND_PRINT | GDK_KEY_Print (0xFF61) Qt::Print (0x01000009) | ||
«Save» [1] | Сохраняет текущий документ или сообщение. | APPCOMMAND_SAVE | GDK_KEY_Save (0x1008FF77) Qt::Key_Save (0x010000EA) | ||
«SpellCheck» [1] | Запускает проверку орфографии в текущем документе. | APPCOMMAND_SPELL_CHECK | GDK_KEY_Spell (0x1008FF7C) Qt::Key_Spell (0x010000EC) | ||
«MailForward» [1] | Открывает пользовательский интерфейс для пересылки сообщения. | APPCOMMAND_FORWARD_MAIL | GDK_KEY_MailForward (0x1008FF90) Qt::Key_MailForward (0x010000FB) | ||
«MailReply» [1] | Открывает пользовательский интерфейс для ответа на сообщение. | APPCOMMAND_REPLY_TO_MAIL | GDK_KEY_Reply (0x1008FF72) Qt::Key_Reply (0x010000E5) | ||
«MailSend» [1] | Отправляет текущее сообщение. | APPCOMMAND_SEND_MAIL | GDK_KEY_Send (0x1008FF7B) Qt::Key_Send (0x010000EB) |
[1] До Firefox 37, эта клавиша генерировала значение «Unidentified» .
Клавиши приложений
На некоторых клавиатурах есть специальные клавиши для запуска определённых распространённых приложений или переключения на них. Значения клавиш для них перечислены здесь.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«LaunchCalculator» [5] | Клавиша запуска калькулятора Calculator , часто помечается значком. Часто используется в качестве общей клавиши запуска приложений ( APPCOMMAND_LAUNCH_APP2 ). | APPCOMMAND_LAUNCH_APP2 | GDK_KEY_Calculator (0x1008FF1D) Qt::Key_Calculator (0x010000CB) | KEYCODE_CALCULATOR (210) | |
«LaunchCalendar» [5] | Клавиша календаря Calendar . Часто помечается значком. | GDK_KEY_Calendar (0x1008FF20) Qt::Key_Calendar (0x010000E4) | KEYCODE_CALENDAR (208) | ||
«LaunchContacts» | Клавиша «Контакты» Contacts . | KEYCODE_CONTACTS (207) | |||
«LaunchMail» | Клавиша электронной почты Mail . Часто помечается значком. | VK_LAUNCH_MAIL (0xB4) APPCOMMAND_LAUNCH_MAIL | GDK_KEY_Mail (0x1008FF19) Qt::Key_LaunchMail (0x010000A0) | KEYCODE_ENVELOPE (65) | |
«LaunchMediaPlayer» [1] | Клавиша медиаплеера Media Player . Часто помечается значком. | VK_LAUNCH_MEDIA_SELECT (0xB5) APPCOMMAND_LAUNCH_MEDIA_SELECT | GDK_KEY_CD (0x1008FF53) GDK_KEY_Video (0x1008FF87) GDK_KEY_AudioMedia (0x1008FF32) Qt::Key_LaunchMedia (0x010000A1) | ||
«LaunchMusicPlayer» [5] | Клавиша музыкального проигрывателя Music Player . Часто помечается значком. | GDK_KEY_Music (0x1008FF92) Qt::Key_Music (0x010000FD) | KEYCODE_MUSIC (209) | ||
«LaunchMyComputer» [5] | Клавиша «Мой компьютер» My Computer на клавиатурах Windows. Часто используется в качестве общей клавиши запуска приложений ( APPCOMMAND_LAUNCH_APP1 ). | APPCOMMAND_LAUNCH_APP1 | GDK_KEY_MyComputer (0x1008FF33) GDK_KEY_Explorer (0x1008FF5D) | ||
«LaunchPhone» | Клавиша телефонии Phone . Открывает приложение для набора номера телефона (если таковое имеется). | GDK_KEY_Phone (0x1008FF6E) Qt::Key_Phone (0x010000E3) | |||
«LaunchScreenSaver» [5] | Клавиша заставки Screen Saver . | GDK_KEY_ScreenSaver (0x1008FF2D) Qt::Key_ScreenSaver (0x010000BA) | |||
«LaunchSpreadsheet» [4] | Клавиша табличного процессора Spreadsheet . Эта клавиша часто помечается значком. | GDK_KEY_Excel (0x1008FF5C) Qt::Key_Excel (0x010000D4) | |||
«LaunchWebBrowser» [4] | Клавиша веб-браузера Web Browser . Эта клавиша часто помечается значком. | GDK_KEY_WWW (0x1008FF2E) Qt::Key_WWW (0x010000BB) | KEYCODE_EXPLORER (64) | ||
«LaunchWebCam» [5] | Клавиша WebCam . Открывает приложение веб-камеры. | GDK_KEY_WebCam (0x1008FF8F) Qt::Key_WebCam (0x010000FA) | |||
«LaunchWordProcessor» [5] | Клавиша текстового процессора Word Processor . Это может быть значок конкретного приложения текстового процессора или общий значок документа. | GDK_KEY_Word (0x1008FF89) Qt::Key_Word (0x010000F4) | |||
«LaunchApplication1» [2] | 1-я общая кнопка запуска приложений. | VK_LAUNCH_APP1 (0xB6) APPCOMMAND_LAUNCH_APP1 | GDK_KEY_Launch0 (0x1008FF40) Qt::Key_Launch0 (0x010000A2) | ||
«LaunchApplication2» [3] | 2-я общая кнопка запуска приложений. | VK_LAUNCH_APP2 (0xB7) APPCOMMAND_LAUNCH_APP2 | GDK_KEY_Launch1 (0x1008FF41) Qt::Key_Launch1 (0x010000A3) | ||
«LaunchApplication3» | 3-я общая кнопка запуска приложений. | GDK_KEY_Launch2 (0x1008FF42) Qt::Key_Launch2 (0x010000A4) | |||
«LaunchApplication4» | 4-я общая кнопка запуска приложений. | GDK_KEY_Launch3 (0x1008FF43) Qt::Key_Launch3 (0x010000A5) | |||
«LaunchApplication5» | 5-я общая кнопка запуска приложений. | GDK_KEY_Launch4 (0x1008FF44) Qt::Key_Launch4 (0x010000A6) | |||
«LaunchApplication6» | 6-я общая кнопка запуска приложений. | GDK_KEY_Launch5 (0x1008FF45) Qt::Key_Launch5 (0x010000A7) | |||
«LaunchApplication7» | 7-я общая кнопка запуска приложений. | GDK_KEY_Launch6 (0x1008FF46) Qt::Key_Launch6 (0x010000A8) | |||
«LaunchApplication8» | 8-я общая кнопка запуска приложений. | GDK_KEY_Launch7 (0x1008FF47) Qt::Key_Launch7 (0x010000A9) | |||
«LaunchApplication9» | 9-я общая кнопка запуска приложений. | GDK_KEY_Launch8 (0x1008FF48) Qt::Key_Launch8 (0x010000AA) | |||
«LaunchApplication10» | 10-я общая кнопка запуска приложений. | GDK_KEY_Launch9 (0x1008FF49) Qt::Key_Launch9 (0x010000AB) | |||
«LaunchApplication11» | 11-я общая кнопка запуска приложений. | GDK_KEY_LaunchA (0x1008FF4A) Qt::Key_LaunchA (0x010000AC) | |||
«LaunchApplication12» | 12-я общая кнопка запуска приложений. | GDK_KEY_LaunchB (0x1008FF4B) Qt::Key_LaunchB (0x010000AD) | |||
«LaunchApplication13» | 13-я общая кнопка запуска приложений. | GDK_KEY_LaunchC (0x1008FF4C) Qt::Key_LaunchC (0x010000AE) | |||
«LaunchApplication14» | 14-я общая кнопка запуска приложений. | GDK_KEY_LaunchD (0x1008FF4D) Qt::Key_LaunchD (0x010000AF) | |||
«LaunchApplication15» | 15-я общая кнопка запуска приложений. | GDK_KEY_LaunchE (0x1008FF4E) Qt::Key_LaunchE (0x010000B0) | |||
«LaunchApplication16» | 16-я общая кнопка запуска приложений. | GDK_KEY_LaunchF (0x1008FF4F) Qt::Key_LaunchF (0x010000B1) |
[1] Internet Explorer, Edge, и Firefox (36 и ранее) используют «SelectMedia» вместо «LaunchMediaPlayer» . Firefox 37 и Firefox 48 используют «MediaSelect» . Firefox 49 был обновлён в соответствии с последней спецификацией и теперь возвращает «LaunchMediaPlayer» .
[2] Google Chrome 57 и ранние возвращают «LaunchMyComputer» вместо «LaunchApplication1» . Смотри Chrome Bug 612743 для дополнительной информации.
[3] Google Chrome 57 и ранние возвращают «LaunchCalculator» вместо «LaunchApplication2» . Смотри Chrome Bug 612743 для дополнительной информации.
[4] До Firefox 37, Firefox возвращал the key code «LaunchApplication1″ вместо » LaunchWebBrowser» для клавиши Веб-браузера.
[5] Firefox ввёл поддержку этой клавиши в Firefox 37. До этого, эта клавиша возвращала значение «Unidentified» .
Клавиши управления браузером
На некоторых клавиатурах есть специальные клавиши для управления веб-браузерами. Это следующие клавиши.
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«BrowserBack» | Переход к предыдущему содержимому или странице в истории текущего веб-представления. | VK_BROWSER_BACK (0xA6) APPCOMMAND_BROWSER_BACKWARD | GDK_KEY_Back (0x1008FF26) Qt::Key_Back (0x01000061) | KEYCODE_BACK (4) | |
«BrowserFavorites» [1] | Открывает список закладок/избранного пользователя. | VK_BROWSER_FAVORITES (0xAB) APPCOMMAND_BROWSER_FAVORITES | GDK_KEY_Favorites (0x1008FF30) GDK_KEY_MySites (0x1008FF67) Qt::Favorites (0x01000091) | KEYCODE_BOOKMARK (174) | |
«BrowserForward» | Переход к следующему содержимому или странице в истории текущего веб-представления. | VK_BROWSER_FORWARD (0xA7) APPCOMMAND_BROWSER_FORWARD | GDK_KEY_Forward (0x1008FF27) Qt::Key_Forward (0x01000062) | KEYCODE_FORWARD (125) | |
«BrowserHome» | Переход к домашней странице, установленной пользователем. | VK_BROWSER_HOME (0xAC) APPCOMMAND_BROWSER_HOME | GDK_KEY_HomePage (0x1008FF18) Qt::Key_HomePage (0x01000090) | KEYCODE_HOME (3) | |
«BrowserRefresh» | Обновление текущей страницы или содержимого. | VK_BROWSER_REFRESH (0xA8) APPCOMMAND_BROWSER_REFRESH | GDK_KEY_Refresh (0x1008FF29) GDK_KEY_Reload (0x1008FF73) | ||
«BrowserSearch» | Активирует предпочтительную поисковую систему пользователя или интерфейс поиска в его браузере. | VK_BROWSER_SEARCH (0xAA) APPCOMMAND_BROWSER_SEARCH | GDK_KEY_Search (0x1008FF1B) Qt::Key_Search (0x01000092) | KEYCODE_SEARCH (84) | |
«BrowserStop» | Останавливает загрузку текущего веб-представления или содержимого. | VK_BROWSER_STOP (0xA9) APPCOMMAND_BROWSER_STOP | GDK_KEY_Stop (0x1008FF28) Qt::Key_Search (0x01000063) |
[1] До Firefox 37, эта клавиша возвращала значение «Unidentified» .
Клавиши цифрового блока
Эти клавиши находятся на цифровой панели клавиатуры. Однако не все они присутствуют на каждой клавиатуре. Хотя типичные цифровые панели имеют цифровые клавиши от 0 до 9 (кодируются как «0» — «9» ), некоторые мультимедийные клавиатуры включают дополнительные цифровые клавиши для более высоких чисел.
Примечание: Клавиша 10 , если она присутствует, генерирует события со значением ключа «0» .
Значение KeyboardEvent.key | Описание | Виртуальный код клавиши | |||
---|---|---|---|---|---|
Windows | Mac | Linux | Android | ||
«Decimal» [1] | VK_DECIMAL (0x6E) | kVK_ANSI_KeypadDecimal (0x41) | GDK_KEY_KP_Decimal (0xFFAE) | KEYCODE_NUMPAD_DOT (158) | |
«Key11» | Клавиша 11 встречается на некоторых цифровых мультимедиа клавиатурах. | ||||
«Key12» | Клавиша 12 встречается на некоторых цифровых мультимедиа клавиатурах.. | ||||
«Multiply» [1] | Клавиша умножения на цифровой панели, * . | VK_MULTIPLY (0x6A) | kVK_ANSI_KeypadMultiply (0x43) | GDK_KEY_KP_Multiply (0xFFAA) Qt::Key_Multiply (0x0D7) | KEYCODE_NUMPAD_MULTIPLY (155) |
«Add» [1] | Клавиша сложения на цифровой панели, + . | VK_ADD (0x6B) | kVK_ANSI_KeypadPlus (0x45) | GDK_KEY_KP_Add (0xFFAB) | KEYCODE_NUMPAD_ADD (157) |
«Clear» | Клавиша очистки на цифровой панели, Clear . | kVK_ANSI_KeypadClear (0x47) | GDK_KEY_Clear (0xFF0B) Qt::Key_Clear (0x0100000B) | KEYCODE_CLEAR (28) | |
«Divide» [1] | Клавиша деления на цифровой панели, / . | VK_DIVIDE (0x6F) | kVK_ANSI_KeypadDivide (0x4B) | GDK_KEY_KP_Divide (0xFFAF) Qt::Key_Slash (0x2F) | KEYCODE_NUMPAD_DIVIDE (154) |
«Subtract» [1] | Клавиша вычитания на цифровой панели, — . | VK_SUBTRACT (0x6D) | kVK_ANSI_KeypadMinus (0x4E) | GDK_KEY_KP_Subtract (0xFFAD) | KEYCODE_NUMPAD_SUBTRACT (156) |
«Separator» [1] | VK_SEPARATOR (0x6C) | kVK_JIS_KeypadComma (0x5F) | GDK_KEY_KP_Separator (0xFFAC) | KEYCODE_NUMPAD_COMMA (159) | |
От «0» до «9» | Фактические цифровые клавиши на цифровой панели. | VK_NUMPAD0 (0x60) — VK_NUMPAD9 (0x69) | kVK_Keypad0 (0x52) — kVK_Keypad9 (0x5C) | GDK_KEY_KP_0 (0xFFB0) — GDK_KEY_KP_9 (0xFFB9) | KEYCODE_NUMPAD_0 (144) — KEYCODE_NUMPAD_9 (153) |
[1] В то время как старые браузеры использовали такие слова, как «Добавить», «Десятичное число», «Умножить» и т. д., современные браузеры идентифицируют их по фактическому символу («+», «.», «*» и т. д.).
Found a content problem with this page?
This page was last modified on 17 февр. 2023 г. by MDN contributors.
Adblockdetector