MEASUREITEMSTRUCT结构

MEASUREITEMSTRUCT数据结构具有如下形式:
typedef struct tagMEASUREITEMSTRUCT
{
  UINT CtlType;
  UINT CtlID;
  UINT itemID;
  UINT itemWidth;
  UINT itemHeight;
  DWORD itemData
} MEASUREITEMSTRUCT;
MEASUREITEMSTURCT结构通知Windows自画控件或菜单项的尺度。这使得Windows能够正确处理控件的用户交互。如果没有正确地填充MEASUREITEMSTRUCT结构中的成员,可能会导致控件的不正确的操作。

成员:
CtlType包含了控件的类型。控件类型的取值如下:
·ODT_COMBOBOX自画组合框。
·ODT_LISTBOX自画列表框。
·ODT_MENU自画菜单。
CtlID包含了组合框、列表框或按钮的控制ID。菜单不使用这个成员。
ItemID包括了菜单的菜单项ID或是可变高度的组合框或列表框中列表框项的ID。这个成员不对固定高度的组合框、列表框和按钮使用。
ItemWidth指定了菜单项的宽度。自画菜单项的所有者必须在它从消息返回之前填充这个成员。
ItemHeight指定了列表框或菜单中一项的高度。在从消息返回之前,自画组合框、列表框或菜单项的所有者必须填充这个成员。列表框项的最大高度为255。
ItemData对于组合框或列表框,这个成员中包含了下列函数传递给列表框的值:
·CComboBox::AddString
·CComboBox::InsertString
·CListBox::AddString
·CListBox::InsertString
对于菜单,这个成员中包含了下列函数传递给菜单的值:
·CMenu::AppendMenu
·CMenu::InsertMenu
·CMenu::ModifyMenu

请参阅:CWnd::OnMeasureItem