Share via


ListView_SortItems Makro (commctrl.h)

Verwendet eine anwendungsdefinierte Vergleichsfunktion, um die Elemente eines Listenansichtssteuerelements zu sortieren. Der Index der einzelnen Elemente wird geändert, um die neue Sequenz widerzuspiegeln. Sie können dieses Makro verwenden oder die LVM_SORTITEMS Nachricht explizit senden.

Syntax

void ListView_SortItems(
   hwndLV,
   _pfnCompare,
   _lPrm
);

Parameter

hwndLV

Typ: HWND

Ein Handle für das Listenansichtssteuerelement.

_pfnCompare

Typ: PFNLVCOMPARE

Ein Zeiger auf die anwendungsdefinierte Vergleichsfunktion. Die Vergleichsfunktion wird während des Sortiervorgangs jedes Mal aufgerufen, wenn die relative Reihenfolge von zwei Listenelementen verglichen werden muss.

_lPrm

Typ: LPARAM

Der anwendungsdefinierte Wert, der an die Vergleichsfunktion übergeben wird.

Rückgabewert

Keine

Bemerkungen

Die Vergleichsfunktion weist die folgende Form auf.

int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);

Der Parameter lParam1 ist der Wert, der dem ersten verglichenen Element zugeordnet ist. und der lParam2-Parameter ist der Wert, der dem zweiten Element zugeordnet ist. Dies sind die Werte, die im lParam-Member der LVITEM-Struktur der Elemente angegeben wurden, als sie in die Liste eingefügt wurden. Der lParamSort-Parameter ist der gleiche Wert, der an die LVM_SORTITEMS Nachricht übergeben wird.

Die Vergleichsfunktion muss einen negativen Wert zurückgeben, wenn das erste Element dem zweiten vorangestellt werden soll, einen positiven Wert, wenn das erste Element dem zweiten folgen soll, oder null, wenn die beiden Elemente gleichwertig sind.

Hinweis Während des Sortierungsprozesses sind die Inhalte der Listenansicht instabil. Wenn die Rückruffunktion Nachrichten an das Listenansichtssteuerelement sendet, sind die Ergebnisse unvorhersehbar.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile commctrl.h