Share via


WM_IME_COMPOSITION (Compact 2013)

3/28/2014

This 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.

Syntax

WM_IME_COMPOSITION 
    chDBCS = (WORD) wParam; 
    fFlags = (BOOL) lParam;

Parameters

  • chDBCS
    DBCS character that represents the latest change to the composition string.
  • fFlags
    Change flag that indicates how the composition string or character changed. The following table shows the possible values for this parameter.

    Value

    Description

    GCS_COMPSTR

    Retrieves or updates the current composition string.

    GCS_COMPATTR

    Retrieves or updates the attribute of the composition string.

    GCS_COMPCLAUSE

    Retrieves or updates clause information of the composition string.

    GCS_COMPREADSTR

    Retrieves or updates the attributes of the reading string of the current composition.

    GCS_COMPREADATTR

    Retrieves or updates the attributes of the reading string of the current composition.

    GCS_COMPREADCLAUSE

    Retrieves or updates the clause information of the reading string of the composition string.

    GCR_ERRORSTR

    Retrieves or updates the error string of the current composition.

    GCR_INFOSTR

    Retrieves or updates the information string of the current composition.

    GCS_RESULTSTR

    Retrieves or updates the string of the composition result.

    GCS_RESULTCLAUSE

    Retrieves or updates clause information of the result string.

    GCS_RESULTREADSTR

    Retrieves or updates the reading string.

    GCS_RESULTREADCLAUSE

    Retrieves or updates clause information of the reading string.

    GCS_SETCURSORPOS

    Sets the position of the cursor.

    GCS_TYPINGINFO

     

Return Value

None.

Remarks

The fFlags parameter can also be a combination of values. The following table shows the values that can be used.

Value

Description

CS_INSERTCHAR

Specifies that the given composition character should be inserted at the current insertion point. An application should display the composition character if it processes this message.

CS_NOMOVECARET

Specifies that the application must not move the caret position because of processing the message. For example, if an IME specifies a combination of CS_INSERTCHAR and CS_NOMOVECARET, the application should insert the given 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.

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 given. An application can call the ImmGetCompositionString function 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.

For more information, see IME Composition String Values.

Requirements

Header

imm.h

See Also

Reference

Input Method Editor (IME) Window Messages
DefWindowProc

Other Resources

ImmGetCompositionString