сообщение WM_IME_CHAR

Отправляется в приложение, когда IME получает символ результата преобразования. Окно получает это сообщение через функцию WindowProc .

LRESULT CALLBACK WindowProc(
 HWND  hwnd,
 WM_IME_CHAR,
 WPARAM wParam,
 LPARAM lParam   
);

Параметры

hwnd

Дескриптор окна.

wParam

DBCS: Однобайтовое или двухбайтовое значение символа. Для двухбайтового символа (BYTE)(wParam >> 8) содержит байт свинца. Обратите внимание, что круглые скобки необходимы, так как оператор приведения имеет более высокий приоритет, чем оператор shift.

Юникода: Значение символа Юникода.

lParam

Число повторов, код сканирования, расширенный флаг ключа, контекстный код, предыдущий флаг состояния ключа и флаг состояния перехода со значениями, как определено ниже.

bit Значение
0—15 Число повторов. Так как первый байт и второй байт являются непрерывными, это всегда 1.
16—23 Отсканируйте код на наличие полного азиатского символа.
24 Расширенный ключ.
25-28 Не используется.
29 Контекстный код.
30 Предыдущее состояние ключа.
31 Переходное состояние.

 

Комментарии

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

Если в окне, отличном от Юникода, сообщение WM_IME_CHAR содержит двухбайтовый символ и приложение передает это сообщение в DefWindowProc, IME преобразует это сообщение в два сообщения WM_CHAR, каждое из которых содержит один байт двухбайтового символа.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Winuser.h (включая Windows.h)

См. также раздел