Синтаксис
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 Нет Замечания по платформе Не имеется