MEASUREITEMSTRUCT 結構 (winuser.h)
通知系統擁有者繪製控制項或功能表項目的維度。 這可讓系統正確處理使用者與控制項的互動。
語法
typedef struct tagMEASUREITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
UINT itemWidth;
UINT itemHeight;
ULONG_PTR itemData;
} MEASUREITEMSTRUCT, *PMEASUREITEMSTRUCT, *LPMEASUREITEMSTRUCT;
成員
CtlType
類型: UINT
控制項類型。 此成員可以是下表所示的其中一個值。
值 | 意義 |
---|---|
|
擁有者繪製的下拉式方塊 |
|
擁有者繪製的清單方塊 |
|
擁有者繪製清單檢視控制項 |
|
擁有者繪製的功能表 |
CtlID
類型: UINT
下拉式方塊或清單方塊的識別碼。 這個成員無法用於功能表。
itemID
類型: UINT
功能表項目的識別碼,或清單方塊或下拉式方塊專案的位置。 只有在清單方塊具有 LBS_OWNERDRAWVARIABLE 樣式時,才會指定此值;只有當下拉式方塊具有 CBS_OWNERDRAWVARIABLE 樣式時,才會指定這個值。
itemWidth
類型: UINT
功能表項目的寬度,以圖元為單位。 從訊息傳回之前,擁有者繪製功能表項目的擁有者必須填滿這個成員。
itemHeight
類型: UINT
清單方塊或功能表中個別專案的高度,以圖元為單位。 從訊息傳回之前,擁有者繪製下拉式方塊、清單方塊或功能表項目的擁有者必須填寫此成員。
itemData
類型: ULONG_PTR
與功能表項目相關聯的應用程式定義值。 針對控制項,此成員會指定LB_SETITEMDATA或CB_SETITEMDATA訊息最後指派給清單方塊或下拉式方塊的值。 如果清單方塊或下拉式方塊具有LB_HASSTRINGS或CB_HASSTRINGS樣式,則此值一開始為零。 否則,此值一開始是傳遞至下列其中一個訊息之 lParam 參數中清單方塊或下拉式方塊的值:
備註
擁有者繪製控制項的擁有者視窗會收到MEASUREITEMSTRUCT結構的指標,做為WM_MEASUREITEM訊息的lParam參數。 建立控制項時,擁有者繪製控制項會將此訊息傳送至其擁有者視窗。 然後,擁有者會在 控制項的結構中填入適當的成員,並傳回 。 除了由其視窗預先決定其大小的擁有者繪製按鈕控制項以外,此結構適用于所有擁有者繪製的控制項。
如果應用程式未填滿 MEASUREITEMSTRUCT的適當成員,則控制項或功能表項目可能無法正確繪製。
規格需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | winuser.h (包括 Windows.h) |
另請參閱
參考