Система посылает сообщение WM_COMPAREITEM, чтобы определить относительное положение элемента в отсортированном списке рисуемом владельцем поле со списком или списке. Всякий раз, когда приложение добавляет новый элемент, система отправляет это сообщение владельцу со списком или список созданы с CBS_SORT или LBS_SORT стиль.
WM_COMPAREITEM idCtl = wParam; / / управления lpcis идентификатор = lParam (LPCOMPAREITEMSTRUCT); / / структура с элементами
Возвращаемое значение указывает относительное положение двух пунктов. Это может быть любой из следующих:
| Значение | Значение |
|---|---|
| 1 | Пункт 1 предшествует пункт 2 в порядке сортировки. |
| 0 | Пункты 1 и 2 являются эквивалентными в отсортированном порядке. |
| 1 | Пункт 1 следует пункт 2 в порядке сортировки. |
Когда владелец рисуемом владельцем поле со списком или списке получает это сообщение, владелец возвращает значение, показывающее, какие из элементов, COMPAREITEMSTRUCT структурой будет выводиться перед другой. Как правило система отправляет это сообщение несколько раз до тех пор, пока он определяет точное положение для нового элемента.
Если процедуру диалогового окна обрабатывает это сообщение, он должен привести желаемого возвращаемое значение к BOOL и напрямую возвращать значения. DWL_MSGRESULT значение, установленное SetWindowLong функция игнорируется.
nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.
Обзор полей со списком, списком окна сообщений, COMPAREITEMSTRUCT