Главная
» WINDOWS
»
Как распознать нажатие клавиши в Windows 10
Как распознать нажатие клавиши в Windows 10
Чтобы определить нажатие клавиши в Windows 10, начните с браузерного тестера событий нажатия клавиш для обычных клавиш, а затем используйте SharpKeys, когда вам потребуется имя клавиши Windows и значение в формате скан-кода. Эти инструменты показывают только тот ввод, который к ним поступает. Отсутствие результата не означает автоматически, что клавиша неисправна: Windows, браузер, прошивка клавиатуры или утилита переназначения могут обработать его первыми.
Нажмите и отпустите клавишу один раз. Запишите значения для key, code, location, и типа события. Повторите с клавишей Shift только в том случае, если вам нужно увидеть, изменяется ли отображаемый символ.
Проверяйте по одной клавише за раз. Сообщения браузера или сочетания клавиш Windows могут быть перехвачены до того, как страница их увидит, поэтому не используйте зарезервированные комбинации для определения работоспособности отдельной клавиши.
Пример: браузер получает клавишу в позиции A как символ нижнего регистра и сообщает её физический код.
Эти поля отвечают на разные вопросы. keyСимвол или действие, выполняемое с помощью активной раскладки клавиатуры и модификаторов; нажатие Shift+A может изменить его с «a» на «A». codeОпределяет физическое положение клавиши, поэтому клавиша в положении A обычно отображается как четная, KeyAдаже если на другой раскладке вводится другой символ. locationМожет различать клавиши-модификаторы влево/вправо или клавишу цифровой клавиатуры; распространенные значения: 0 для стандартной раскладки, 1 для левой, 2 для правой и 3 для цифровой клавиатуры. Справочник по KeyboardEvent в MDN объясняет эти свойства. A keydownотправляется при нажатии и keyupпри отпускании клавиши.
Выберите «Добавить» , затем в разделе «Назначить эту клавишу» выберите «Тип клавиши ». Нажмите клавишу, которую хотите идентифицировать. SharpKeys должен отобразить название клавиши и код распознаваемого ввода.
После записи результата отмените или закройте диалоговое окно настройки сочетаний клавиш. Не сохраняйте настройки, если не собираетесь переназначать клавишу; SharpKeys изменяет сочетания клавиш Windows через реестр при применении переназначения.
В диалоговом окне «Тип клавиши» SharpKeys можно отобразить метку и код клавиши; окно настройки можно закрыть, не сохраняя переназначение.
SharpKeys полезен, когда отображения символов в браузере недостаточно, особенно для навигационных и модификаторных клавиш. В документации проекта SharpKeys отмечается, что некоторые клавиши недоступны для функции ввода текста. Например, многие клавиши Fn на ноутбуках обрабатываются внутри клавиатуры и никогда не попадают в Windows; клавишу Alt также может потребоваться выбрать из списка, а не набирать вручную. Метка «Неизвестно» или универсальный код, например, 00_100являются неубедительным результатом, а не доказательством того, что клавиша не работает.
Используйте экранную клавиатуру в качестве элемента управления.
Экранная клавиатура (OSK) в Windows 10 — это альтернативный способ ввода текста, а не детектор физических клавиш. Откройте её с помощью сочетания клавиш Windows + Ctrl + O или перейдите в «Параметры» > «Специальные возможности» > «Клавиатура» и включите параметр «Использовать экранную клавиатуру» . Щёлкните по букве в экранной клавиатуре, когда активно безопасное текстовое поле. Если щелчок вставляет текст, но физическое нажатие не приводит к результату, приложение может принимать ввод с клавиатуры, и проблема, скорее всего, связана с физическим нажатием клавиши. Microsoft описывает экранную клавиатуру как способ ввода текста без физической клавиатуры; компания не гарантирует подсветку соответствующей физической клавиши.
Экранная клавиатура позволяет вводить текст при нажатии, но не дублирует каждое нажатие на физической клавиатуре.
Выясните, что блокирует ключ: программное или аппаратное обеспечение.
Если клавиша не отображается в браузере или в SharpKeys, закройте все активные программы для макросов или переназначения клавиш и проверьте еще раз. Примерами могут служить скрипт AutoHotkey, PowerToys Keyboard Manager или утилита, поставляемая с клавиатурой. Эти инструменты могут изменять ввод, получаемый другой программой. Также убедитесь, что тестер находится в фокусе, и проверяйте клавишу в текстовом поле, а не внутри приложения, которое может резервировать свои собственные сочетания клавиш.
Для внешней клавиатуры отсоедините и снова подключите её, попробуйте другой USB-порт и протестируйте вторую клавиатуру на том же компьютере. Если подозрительная клавиша работает на второй клавиатуре, вероятной причиной является оригинальная клавиатура, её кабель или приёмник, либо её прошивка. Если одна и та же клавиша отсутствует на нескольких клавиатурах, проверьте, не перехвачена ли она Windows, активной раскладкой и программным обеспечением клавиатуры, прежде чем делать вывод, что Windows не может её прочитать. На ноутбуке клавиши Fn и мультимедийные клавиши могут обрабатываться прошивкой устройства, а не отображаться как обычные события нажатия клавиш браузера.
Проверка второй клавиатуры помогает отделить проблему с устройством от проблемы с Windows или приложением.
В обзоре ввода с клавиатуры Windows от Microsoft описывается, как коды сканирования преобразуются в коды виртуальных клавиш, а затем интерпретируются через активную раскладку клавиатуры. Именно поэтому физическая клавиша, вводимый ею символ и событие, получаемое приложением, связаны, но не всегда идентичны. Инструкции по использованию экранной клавиатуры см. в руководстве Microsoft . Если неизвестная клавиша не дает результата ни в одном из диагностических тестов, запишите модель клавиатуры и протестируйте ее с помощью программного обеспечения производителя или документации по поддержке; не следует предполагать, что каждая специальная клавиша может быть обнаружена или переназначена обычной утилитой Windows.