COMPAREITEMSTRUCT 结构 (winuser.h)

为排序的所有者绘制列表框或组合框中的两个项提供标识符和应用程序提供的数据。

每当应用程序将新项添加到使用CBS_SORT或LBS_SORT样式创建的所有者绘制列表框或组合框时,系统会向所有者发送WM_COMPAREITEM消息。 消息的 lParam 参数包含指向 COMPAREITEMSTRUCT 结构的长指针。 收到消息后,所有者会比较这两个项,并返回一个值,该值指示哪个项先于另一项排序。

语法

typedef struct tagCOMPAREITEMSTRUCT {
  UINT      CtlType;
  UINT      CtlID;
  HWND      hwndItem;
  UINT      itemID1;
  ULONG_PTR itemData1;
  UINT      itemID2;
  ULONG_PTR itemData2;
  DWORD     dwLocaleId;
} COMPAREITEMSTRUCT, *PCOMPAREITEMSTRUCT, *LPCOMPAREITEMSTRUCT;

成员

CtlType

类型: UINT

ODT_LISTBOX (所有者绘制列表框) 或ODT_COMBOBOX (所有者绘制的组合框) 。

CtlID

类型: UINT

列表框或组合框的标识符。

hwndItem

类型: HWND

控件的句柄。

itemID1

类型: UINT

要比较的列表框或组合框中第一项的索引。 如果尚未插入该项,或者在列表框或组合框中搜索潜在项时,此成员将为 –1。

itemData1

类型: ULONG_PTR

要比较的第一个项的应用程序提供的数据。 (此值作为将项目添加到列表框或组合框的消息的 lParam 参数传递。)

itemID2

类型: UINT

要比较的列表框或组合框中第二项的索引。

itemData2

类型: ULONG_PTR

正在比较的第二个项目的应用程序提供的数据。 此值作为将项目添加到列表框或组合框的消息的 lParam 参数传递。 如果尚未插入该项,或者在列表框或组合框中搜索潜在项时,此成员将为 –1。

dwLocaleId

类型: DWORD

区域设置标识符。 若要创建区域设置标识符,请使用 MAKELCID 宏。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winuser.h (包括 Windows.h)

另请参阅

组合框

概念性

MAKELCID

其他资源

引用

WM_COMPAREITEM