WM_MEASUREITEM訊息

建立控制項或功能表時,傳送至下拉式方塊、清單方塊、清單檢視控制項或功能表項目的擁有者視窗。

視窗會透過其 WindowProc 函式接收此訊息。

WM_MEASUREITEM

    WPARAM wParam;
    LPARAM lParam; 

參數

wParam

包含lParam參數所指向之 MEASUREITEMSTRUCT結構的CtlID成員值。 這個值會識別傳送 WM_MEASUREITEM 訊息的控制項。 如果訊息是由功能表傳送,則此參數為零。 如果值為非零值,或值為零,且lParam所指向MEASUREITEMSTRUCT成員的CtlType成員值不是ODT_MENU,則訊息是由下拉式方塊或清單方塊傳送。 如果值為非零值,且lParam所指向MEASUREITEMSTRUCTitemID成員值 (UINT) 1,則訊息是由下拉式編輯欄位傳送。

lParam

MEASUREITEMSTRUCT結構的指標,其中包含擁有者繪製控制項或功能表項目的維度。

傳回值

如果應用程式處理此訊息,它應該會傳回 TRUE

備註

當擁有者視窗收到WM_MEASUREITEM訊息時,擁有者會填入訊息的 lParam參數所指向的MEASUREITEMSTRUCT結構,並傳回;這會通知系統控制項的維度。 如果使用 LBS_OWNERDRAWVARIABLECBS_OWNERDRAWVARIABLE 樣式建立清單方塊或下拉式方塊,此訊息會傳送至控制項中每個專案的擁有者;否則,此訊息會傳送一次。

系統會將 WM_MEASUREITEM 訊息傳送至下拉式方塊的擁有者視窗,以及以 OWNERDRAWFIXED 樣式建立的清單方塊,再傳送 WM_INITDIALOG 訊息。 因此,當擁有者收到此訊息時,系統尚未判斷控制項中使用的字型高度和寬度;需要這些值的函式呼叫和計算應該發生在應用程式或程式庫的主要函式中。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限傳統型應用程式]
標頭
Winuser.h (包含 Windows.h)

另請參閱

參考

MEASUREITEMSTRUCT

其他資源

WM_INITDIALOG