5

Я понимаю, что некоторые языки делают что-то вроде этого, когда несколько слов / букв объединяются автоматически по мере их ввода, например, арабский.

Я также знаю, что вы можете создавать свои собственные раскладки языка клавиатуры для Windows, но я сделал это, однако эта функциональность ограничена простым связыванием клавиш с другими клавишами и созданием дополнительных комбинаций Ctrl + Shift. (Microsoft Keyboard Layout Creator)

Я разработчик программного обеспечения, поэтому я не стесняюсь вникать в код, если это необходимо, но я не знаю, с чего начать, готов поспорить, что-то подобное уже существует. Я все еще хочу сохранить свою английскую раскладку английской клавиатуры, но с этими дополнениями. И да, это для целей новизны.

1 ответ1

1

но я понятия не имею, с чего начать, готов поспорить, что-то подобное уже существует.

И вы выиграли пари! Решение, которое вы ищете, называется global keyboard hook.

Если вы можете программировать на C #, вот пример, как это сделать.

Я уже писал такие бывшие хуки в C, но в настоящее время в этом нет необходимости, с C # вы также можете их получить.

Работа такого хука довольно проста: ваша программа получает ВСЕ события клавиатуры ДО того, как они произойдут! Так, например, вы можете сказать «если я получу" а "и" е ", я напишу вместо" æ "или что-то еще», вы можете "отобразить" захваченные символы.

Крючки являются одной из самых мощных функций Windows. Мы можем перехватить все события в среде Windows.

В операционной системе Microsoft® Windows ™ ловушка - это механизм, с помощью которого функция может перехватывать события (сообщения, действия мыши, нажатия клавиш), прежде чем они достигнут приложения. Функция может воздействовать на события и, в некоторых случаях, изменять или отменять их. Функции, которые получают события, называются функциями фильтра и классифицируются в соответствии с типом события, которое они перехватывают. Например, функция фильтра может хотеть получать все события клавиатуры или мыши. Чтобы Windows вызывала функцию фильтра, она должна быть установлена, то есть присоединена к хуку Windows (например, к хуку клавиатуры). Присоединение одной или нескольких функций фильтра к крючку называется установкой крючка. Если к хуку подключено более одной функции фильтра, Windows поддерживает цепочку функций фильтра. Последняя установленная функция находится в начале цепочки, а последняя установленная функция - в конце.

Для поддержки и доступа к функциям фильтра приложения используют функции SetWindowsHookEx и UnhookWindowsHookEx .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .