Поделиться через


Структура 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