共用方式為


MEASUREITEMSTRUCT 結構 (winuser.h)

通知系統擁有者繪製控制項或功能表項目的維度。 這可讓系統正確處理使用者與控制項的互動。

語法

typedef struct tagMEASUREITEMSTRUCT {
  UINT      CtlType;
  UINT      CtlID;
  UINT      itemID;
  UINT      itemWidth;
  UINT      itemHeight;
  ULONG_PTR itemData;
} MEASUREITEMSTRUCT, *PMEASUREITEMSTRUCT, *LPMEASUREITEMSTRUCT;

成員

CtlType

類型: UINT

控制項類型。 此成員可以是下表所示的其中一個值。

意義
ODT_COMBOBOX
擁有者繪製的下拉式方塊
ODT_LISTBOX
擁有者繪製的清單方塊
ODT_LISTVIEW
擁有者繪製清單檢視控制項
ODT_MENU
擁有者繪製的功能表

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)

另請參閱

CB_ADDSTRING

CB_INSERTSTRING

CB_SETITEMDATA

LB_ADDSTRING

LB_INSERTSTRING

LB_SETITEMDATA

參考

WM_MEASUREITEM