WM_IME_COMPOSITION

【勇芳软件工作室】汉化HomePreviousNext

当IME由于键冲击而改变组合状态时,WM_IME_COMPOSITION消息被发送到应用程序。应用程序应该处理此消息,如果它显示组合字符本身。否则,它应该将消息发送到IME窗口。

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

参数

【chDBCS】

表示组合字符串最近更改的DBCS字符。

【FFLAGS】

更改标志,指示组合字符串或字符如何更改。此参数可以是以下值中的一个或多个:

GCS_COMPSTRGCS_SETCURSORPOS
GCS_COMPATTRGCS_RESULTSTR
GCS_COMPCLAUSEGCS_RESULTCLAUSE
GCS_COMPREADSTRGCS_RESULTREADSTR
GCS_COMPREADATTRGCS_RESULTREADCLAUSE
GCS_COMPREADCLAUSEGCR_ERRORSTR
GCS_TYPINGINFOGCR_INFOSTR

返回值

无返回值。

备注

有关这些值的更多信息,请参阅输入法编辑器常量中的“IME Composition String Values”表。

【FFLAGS】参数也可以是以下值的组合:

含义
CS_INSERTCHAR指定在当前插入点处插入给定的组合字符。如果处理此消息,应用程序应显示组合字符。
CS_NOMOVECARET指定应用程序不得移动处理消息的结果的插入符号位置。例如,如果IME指定了CS_INSERTCHAR和CS_NOMOVECARET的组合,则应用程序应在当前插入位置插入给定的字符,但不应将插入符移动到下一个位置。随后使用GCS_RESULTSTR的WM_IME_COMPOSITION消息将替换此字符。

如果应用程序创建了一个IME窗口,它应该将该消息传递给该窗口。DefWindowProc函数通过将其传递给默认IME窗口来处理此消息.IME窗口通过根据给定的更改标志更新其外观来处理此消息。应用程序可以调用ImmGetCompositionString来检索新的构图状态。

如果没有设置GCS_值,则该消息指示当前组合已被取消,并且绘制组合字符串的应用程序应删除该字符串。

也可以看看

DefWindowProc, ImmGetCompositionString