Поделиться через


сообщение WM_IME_COMPOSITION

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

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

Параметры

hwnd

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

wParam

Символ DBCS, представляющий последнее изменение строки композиции.

lParam

Значение, указывающее, как изменяется строка композиции или символ. Этот параметр может иметь одно или несколько из следующих значений. Дополнительные сведения об этих значениях см. в разделе Строковые значения композиции IME.

GCS_COMPATTR

GCS_COMPCLAUSE

GCS_COMPREADSTR

GCS_COMPREADATTR

GCS_COMPREADCLAUSE

GCS_COMPSTR

GCS_CURSORPOS

GCS_DELTASTART

GCS_RESULTCLAUSE

GCS_RESULTREADCLAUSE

GCS_RESULTREADSTR

GCS_RESULTSTR

Параметр lParam также может иметь одно или несколько из следующих значений.

Значение Значение
CS_INSERTCHAR
Вставьте символ композиции wParam в текущую точку вставки. Приложение должно отображать символ композиции, если оно обрабатывает это сообщение.
CS_NOMOVECARET
Не перемещайте позицию курсора в результате обработки сообщения. Например, если IME задает сочетание CS_INSERTCHAR и CS_NOMOVECARET, приложение должно вставить указанный символ в текущую позицию курсора, но не перемещать курсор в следующую позицию. Последующие WM_IME_COMPOSITION сообщение с GCS_RESULTSTR заменит этот символ.

 

Возвращаемое значение

Это сообщение не имеет возвращаемого значения.

Комментарии

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

Если приложение создало окно IME, оно должно передать это сообщение в это окно. Функция DefWindowProc обрабатывает это сообщение, передавая его в окно IME по умолчанию. Окно IME обрабатывает это сообщение, обновляя его внешний вид на основе указанного флага изменения. Приложение может вызвать ImmGetCompositionString для получения нового состояния композиции.

Если ни одно из GCS_ значений не задано, сообщение указывает, что текущая композиция была отменена, и приложения, рисующие строку композиции, должны удалить строку.

Требования

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

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

Диспетчер методов ввода

Сообщения диспетчера входных методов

ImmGetCompositionString