webpredator Geschrieben 3. August 2002 Geschrieben 3. August 2002 Hat jemand eine Routine rumliegen, mit der ich ein ListView sortieren kann? Es geht um eine Highscoreliste. Folgendes: Ich hab immer ein Haupteintrag (Name) und ein SubItem (Punkte). Nun möchte ich nach Punkten sortieren, wie geht das am einfachsten?
webpredator Geschrieben 5. August 2002 Autor Geschrieben 5. August 2002 Oder weiß jemand, wie ich die Methode CustomSort richtig einsetze? Ich weiß nicht, wie das gemeint ist: (Auszug aus der Delphi Hilfe) Mit der Methode CustomSort können Sie die Listenelemente unter Verwendung der angegebenen Sortierfunktion sortieren. type TLVCompare = function(lParam1, lParam2, lParamSort: Integer): Integer stdcall; function CustomSort(SortProc: TLVCompare; lParam: Longint): Boolean; Beschreibung Mit der Methode CustomSort können Sie die Elemente der Liste mit der im Parameter SortProc festgelegten Funktion sortieren. Diese Sortierfunktion vergleicht die Listenelemente, die als lParam1 und lParam2 übergeben werden. Die Sortierfunktion gibt einen Integerwert zurück, der angibt, ob lParam1 und lParam2 gleichrangig sind (Rückgabewert 0), ob lParam1 größer als lParam2 ist (Rückgabewert größer als 0) oder ob lParam1 kleiner als lParam2 ist (Rückgabewert kleiner als 0). Der Parameter lParam von CustomSort ist ein optionaler Wert, der als dritter Parameter an die Sortierfunktion übergeben wird. Hat der Parameter SortProc den Wert nil, generiert CustomSort das Ereignis OnCompare, um die Listenelemente zu vergleichen. Dadurch können Sie mit einer entsprechenden Ereignisbehandlungsroutine eine andere Sortierreihenfolge basierend auf dem Wert des Parameters lParam festlegen (z.B. aufsteigende oder absteigende Reihenfolge). Wird keine Sortierfunktion oder keine Ereignisbehandlungsroutine für OnCompare bereitgestellt, sortiert CustomSort die Elemente alphabetisch nach den Werten der Eigenschaft Caption. Konnte die Liste erfolgreich sortiert werden, gibt CustomSort True zurück.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden