Macro ListView_SortItems
Usa una función de comparación definida por la aplicación para ordenar los ítems en un control list-view. El índice de cada ítem cambia para reflejar al nueva secuencia. Se puede usar esta macro o enviar el mensaje LVM_SORTITEMS explícitamente.
Definición
BOOL ListView_SortItems( HWND hwndLV, PFNLVCOMPARE _pfnCompare, LPARAM _lPrm );
Descripción
- hwndLV
- Un manipulador del control list-view.
- _pfnCompare
- Un puntero a una función de comparación definida por la aplicación. La función de comparación es invocada durante el proceso de ordenación cada vez que el orden relativo de dos ítems de la lista necesita ser comparado.
- _lPrm
- Valor definido por la aplicación que es pasado a la función de comparación.
Valor de retorno
Devuelve TRUE si tiene éxito, o FALSE en caso contrario.
Observaciones
La función de comparación tiene el siguiente formato:
int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);El parámetro lParam1 es el valor asociado con el primer ítem que se está comparando; y el parámetro lParam2 es el valor asociado con el segundo ítem. Estos son los valores que fueron especificados en el miembro lParam de la estructura LVITEM del ítem cuando fue insertado en la lista. El parámetro lParamSort es el mismo valor pasado al mensaje LVM_SORTITEMS.
La función de comparación debe retornar un valor negativo si el primer ítem debe preceder al segundo, un valor positivo si el primer ítem debe seguir al segundo, o cero si los dos ítems son equivalentes.
Hay que tener en cuenta que durante el proceso de ordenación, el contenido del list-view es inestable. Si la función de retrollamada envía cualquier mensaje al control list-view, el resultado es impredecible.