10.16.2.3 - Сообщение WM_DEADCHAR

Синтаксис

WM_DEADCHAR
chCharCode = (TCHAR) wParam;    		// код буквы
lKeyData = lParam;              		// данные для клавиши

Сообщение WM_DEADCHAR посылается окну с фокусом клавиатуры тогда, когда функцией TranslateMessage транслируется сообщение WM_KEYUP. WM_DEADCHAR определяет код буквы, сгенерированный мертвой клавишей. Мертвая клавиша - клавиша, которая генерирует символ, типа умлаута (две точки над буквой), который объединяется с другим символом, чтобы формировать составной символ. Например, символ O - умлаут (O) сгенерирован при помощи ввода с клавиатуры мертвой клавиши для символа умлаута, а затем ввода клавиши O.

Параметры
chCharCode
Значение wParam>. Определяет код символа, сгенерированный мертвой клавишей.
lKeyData
Значение lParam. Определяет счет повторений, скэн-код, флажок дополнительной клавиши, контекстный код, флажок предыдущего состояния клавиши и флажок переходного состояния, как показано в следующем списке:

Возвращаемые значения
Прикладная программа должна возвратить нуль, если она обрабатывает это сообщение.

Замечания
Сообщение WM_DEADCHAR обычно используется прикладными программами, чтобы дать пользователю обратную связь о каждой нажатой клавише. Например, прикладная программа может отображать знак ударения в текущей позиции символа без перемещения каретки.
Поскольку не имеется обязательного соответствия один к одному между нажатыми клавишами и сгенерированными символьными сообщениями, информация в старшем слове параметра lKeyData вообще-то бесполезна для прикладных программ. Информация в старшем слове применяется только к самому последнему сообщению WM_KEYDOWN, которое предшествует посылке сообщения WM_DEADCHAR.
Для усовершенствованных 101- и 102-клавишных клавиатур, дополнительными клавишами являются - правая ALT и правая CTRL в основной части клавиатуры; INS, DEL, HOME, END, PAGE UP, PAGE DOWN и клавиши курсора в группах слева от цифровой клавиатуры; делитель (/) и клавиши ENTER в цифровой клавиатуре. Некоторые другие клавиатуры могут поддерживать бит дополнительной клавиши в параметре lKeyData.

Смотри также
TranslateMessage, WM_KEYDOWN, WM_KEYUP, WM_SYSDEADCHAR

Размещение и совместимость WM_DEADCHAR

Windows NT				Да 
Win95					Да 
Win32s					Да 
Импортируемая библиотека			- 
Заголовочный файл				winuser.h 
Unicode					Нет 
Замечания по платформе			Не имеется

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Владимир Соковиков - 08.08.2002