WM_IME_COMPOSITION訊息

當輸入法變更組合狀態作為按鍵結果時,傳送至應用程式。 視窗會透過其 WindowProc 函式接收此訊息。

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

參數

hwnd

視窗的控制碼。

wParam

表示組合字元串最新變更的 DBCS 字元。

lParam

指定組合字元串或字元變更方式的值。 此參數可以是下列一或多個值。 如需這些值的詳細資訊,請參閱 輸入法組合字元串值

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的組合,應用程式應該在目前的插入號位置插入指定的字元,但不應該將插入號移到下一個位置。 後續使用 GCS_RESULTSTR 的WM_IME_COMPOSITION訊息將會取代此字元。

 

傳回值

此訊息沒有傳回值。

備註

如果應用程式顯示組合字元本身,應用程式應該處理此訊息。 否則,它應該會將訊息傳送至輸入法視窗。

如果應用程式已建立 IME 視窗,它應該將此訊息傳遞至該視窗。 DefWindowProc函式會傳遞至預設的 IME 視窗來處理此訊息。 輸入法視窗會根據指定的變更旗標來更新其外觀,以處理此訊息。 應用程式可以呼叫 ImmGetCompositionString 來擷取新的組合狀態。

如果未設定任何GCS_值,則訊息表示已取消目前的組合,而且繪製組合字元串的應用程式應該刪除字串。

規格需求

需求
最低支援的用戶端
Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Winuser.h (包括 Windows.h) ;
Imm.h (包含 Windows.h)

另請參閱

輸入方法管理員

輸入方法管理員訊息

ImmGetCompositionString