макрос ListView_SortItemsEx (commctrl.h)
Использует функцию сравнения, определяемую приложением, для сортировки элементов элемента управления представлением списка. Индекс каждого элемента изменяется в соответствии с новой последовательностью. Этот макрос можно использовать или явно отправить сообщение LVM_SORTITEMSEX.
Синтаксис
BOOL ListView_SortItemsEx(
HWND hwndLV,
PFNLVCOMPARE _pfnCompare,
LPARAM _lPrm
);
Параметры
hwndLV
Тип: HWND
Дескриптор элемента управления "Представление списка".
_pfnCompare
Тип: PFNLVCOMPARE
Указатель на определяемую приложением функцию сравнения. Он вызывается во время операции сортировки каждый раз, когда необходимо сравнить относительный порядок двух элементов списка.
_lPrm
Тип: LPARAM
Определяемое приложением значение, переданное функции сравнения.
Возвращаемое значение
Тип: BOOL
Возвращает TRUE, если выполнено успешно или FALSE в противном случае.
Замечания
Функция сравнения имеет следующую форму.
int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM _lPrm);
где lParam1 является индексом первого элемента и lParam2 индекс второго. Параметр _lPrmListView_SortItemsExпередается функции обратного вызова в качестве третьего параметра.
Функция сравнения должна возвращать отрицательное значение, если первый элемент должен предшествовать второму, положительное значение, если первый элемент должен соответствовать второму или нулю, если два элемента эквивалентны.
При необходимости можно отправить сообщение LVM_GETITEMTEXT, чтобы получить дополнительные сведения о элементе.
Этот макрос аналогичен ListView_SortItems, за исключением типа информации, переданной функции сравнения. При использовании ListView_SortItemsExиндекс элемента передается вместо значения lparam.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | commctrl.h |