WM_MEASUREITEM メッセージ

コントロールまたはメニューの作成時に、コンボ ボックス、リスト ボックス、リスト ビュー コントロール、またはメニュー項目の所有者ウィンドウに送信されます。

ウィンドウは、 WindowProc 関数を介してこのメッセージを受信します。

WM_MEASUREITEM

    WPARAM wParam;
    LPARAM lParam; 

パラメーター

wParam

lParam パラメーターによって指される MEASUREITEMSTRUCT 構造体の CtlID メンバーの値を格納します。 この値は、 WM_MEASUREITEM メッセージを送信したコントロールを識別します。 メッセージがメニューによって送信された場合、このパラメーターは 0 です。 値が 0 以外であるか、値が 0 で、lParam が指す MEASUREITEMSTRUCTCtlType メンバーの値がODT_MENUされていない場合、メッセージはコンボ ボックスまたはリスト ボックスによって送信されました。 値が 0 以外で、lParam が指す MEASUREITEMSTRUCTitemID メンバーの値が (UINT) 1 の場合、メッセージはコンボ編集フィールドによって送信されました。

lParam

所有者描画コントロールまたはメニュー項目のディメンションを含む MEASUREITEMSTRUCT 構造体へのポインター。

戻り値

アプリケーションがこのメッセージを処理する場合は、 TRUE を返す必要があります。

解説

所有者ウィンドウがWM_MEASUREITEM メッセージを受信すると、所有者はメッセージの lParam パラメーターが指す MEASUREITEMSTRUCT 構造体を入力して返します。これにより、コントロールのディメンションがシステムに通知されます。 リスト ボックスまたはコンボ ボックスが LBS_OWNERDRAWVARIABLE または CBS_OWNERDRAWVARIABLE スタイルで作成された場合、このメッセージはコントロール内の各項目の所有者に送信されます。それ以外の場合、このメッセージは 1 回送信されます。

システムは 、WM_INITDIALOG メッセージを送信する前に、OWNERDRAWFIXED スタイルで作成されたコンボ ボックスとリスト ボックスの所有者ウィンドウにWM_MEASUREITEM メッセージ 送信します。 その結果、所有者がこのメッセージを受信すると、システムはコントロールで使用されるフォントの高さと幅をまだ決定していません。これらの値を必要とする関数呼び出しと計算は、アプリケーションまたはライブラリのメイン関数で行う必要があります。

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Winuser.h (Windows.h を含む)

関連項目

参照

MEASUREITEMSTRUCT

その他のリソース

WM_INITDIALOG