Platform SDK: International Features |
The WM_IME_COMPOSITION message is sent to an application when the IME changes composition status as a result of a keystroke. An application should process this message if it displays composition characters itself. Otherwise, it should send the message to the IME window.
A window receives this message through its WindowProc function.
LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // WM_IME_COMPOSITION WPARAM wParam, // DBCS character LPARAM lParam // change indicator );
GCS_COMPATTR
GCS_COMPCLAUSE
GCS_COMPREADSTR
GCS_COMPREADATTR
GCS_COMPREADCLAUSE
GCS_COMPSTR
GCS_CURSORPOS
GCS_DELTASTART
GCS_RESULTCLAUSE
GCS_RESULTREADCLAUSE
GCS_RESULTREADSTR
GCS_RESULTSTR
For more information about these values, see IME Composition String Values.
The lParam parameter can also be one or more of the following values.
Value | Meaning |
---|---|
CS_INSERTCHAR | The wParam composition character should be inserted at the current insertion point. An application should display the composition character if it processes this message. |
CS_NOMOVECARET | The application must not move the caret position as a result of processing the message. For example, if an IME specifies a combination of CS_INSERTCHAR and CS_NOMOVECARET, the application should insert the specified character at the current caret position but should not move caret to the next position. A subsequent WM_IME_COMPOSITION message with GCS_RESULTSTR will replace this character. |
This message has no return value.
If the application has created an IME window, it should pass this message to that window. The DefWindowProc function processes this message by passing it to the default IME window. The IME window processes this message by updating its appearance based on the change flag specified. An application can call ImmGetCompositionString to retrieve the new composition status.
If none of the GCS_ values are set, the message indicates that the current composition has been canceled and applications that draw the composition string should delete the string.
Windows NT/2000: Requires Windows NT 4.0 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Imm.h.
Input Method Editor Overview, Input Method Editor Messages, DefWindowProc, ImmGetCompositionString