Win32 API. Работа с клавиатурой
Страница 10. Состояние клавиши


Состояние клавиши

В ходе обработки сообщения клавиатуры, у прикладной программы возникает необходимость установить состояние другой клавиши кроме той, для которой сгенерировано текущее сообщение. Например, прикладная программа обработки текстов (текстовый процессор), которая позволяет пользователю нажимать SHIFT+END, чтобы выбрать блок текста, должна проверять состояние клавиши SHIFT всякий раз, когда она принимает сообщение о нажатии от клавиши END. Прикладная программа может использовать функцию GetKeyState, чтобы установить, было ли сгенерировано состояние виртуальной клавиши во время текущего сообщения; она может использовать функцию GetAsyncKeyState, чтобы получить данные о текущем состоянии виртуальной клавиши.

Раскладка символов на клавиатуре сохраняет список названий. Название клавиши, которая создает отдельный символ то же самое, что и символ, созданный клавишей. Название не символьной клавиши типа TAB и ENTER сохраняется как строка символов. Прикладная программа может извлекать данные о названии любой клавиши из драйвера устройства путем вызова функции GetKeyNameText

Трансляции нажатия клавиши и символьной клавиши

Windows включает в себя несколько специальных функций, назначение которых, перевод скэн-кодов, кодов букв и кодов виртуальной клавиши при помощи предоставления различных сообщений о нажатии клавиши. Эти функции включают в себя MapVirtualKey, ToAscii, ToUnicode и VkKeyScan.

 

 
« Предыдущая статья   Следующая статья »