169 похожих чатов

И еще один вопрос. Купил давно BT Keyboard от Микрософт.

Эти извращенцы убрали из нее несколько привычных клавиш, типа NumLock, зато добавили кучу таких, которых в нормальной клаве нет -- например "смайлик" или "замок", которая сразу над Backspace -- очень удобно, палец промахнулся и комп сразу залочен...

Как найти коды этих нестандартных клавиш?

3 ответов

32 просмотра

Вот попробуй это GPT накидал Для того чтобы определить коды нестандартных клавиш на вашей Bluetooth клавиатуре, можно воспользоваться утилитой xev на Linux или специальными инструментами на Windows. Вот несколько способов, которые могут помочь: ### На Windows 1. Использование PowerShell: PowerShell позволяет отслеживать события клавиатуры с помощью специальных команд. Вот пример скрипта на PowerShell, который поможет вам определить коды клавиш: Add-Type @" using System; using System.Windows.Forms; public class KeyboardListener { public static void Main() { Form f = new Form(); f.KeyPreview = true; f.KeyDown += (sender, e) => { Console.WriteLine($"Key: {e.KeyCode}, Code: {(int)e.KeyCode}"); if (e.KeyCode == Keys.Escape) { Application.Exit(); } }; Application.Run(f); } } "@ [KeyboardListener]::Main() Этот скрипт откроет окно, в котором при нажатии клавиш будет отображаться их код. Для выхода из программы нажмите Esc. 2. Использование сторонних программ: Существует множество программ для отслеживания нажатий клавиш, например, [SharpKeys](https://github.com/randyrants/sharpkeys) или [KeyTweak](http://web.archive.org/web/20190714082253/http://webpages.charter.net/krumsick/). Они позволяют не только узнать коды клавиш, но и переназначить их. ### На Linux 1. Использование утилиты xev: В Linux можно использовать утилиту xev для определения кодов клавиш. sudo apt-get install x11-utils xev После запуска xev откроется окно, в котором при нажатии клавиш будет отображаться информация о событии, включая код клавиши. Выглядеть это будет примерно так: KeyPress event, serial 37, synthetic NO, window 0x4e00001, root 0x10e, subw 0x0, time 42440561, (110,56), root:(1136,444), state 0x0, keycode 38 (keysym 0x61, a), same_screen YES, XLookupString gives 1 bytes: (61) "a" XmbLookupString gives 1 bytes: (61) "a" XFilterEvent returns: False Здесь keycode 38 соответствует клавише a. ### Заключение После того как вы узнаете коды нестандартных клавиш, вы можете использовать их для переназначения или отключения нежелательных клавиш. Для этого можно использовать программы вроде SharpKeys на Windows или xmodmap на Linux. Если у вас будут вопросы по конкретным клавишам или потребуется помощь в настройке, пожалуйста, дайте знать!

Стикер

В Windows можно использовать AHK v2 https://www.autohotkey.com/docs/v2/KeyList.htm Создай скриптовый файл; Запусти скрипт. В трее винды появится иконка. По ней правый клик и там где-то будет окно с историей нажатых клавиш. Увеличить или отключить историю кодов можно командой https://www.autohotkey.com/docs/v2/lib/KeyHistory.htm

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта