Einzelnen Beitrag anzeigen

Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: Objectlist sortieren

  Alt 11. Aug 2016, 13:27
Stevie hat den kompletten Beispielcode schon gepostet.
Mehr brauchst Du nicht.

Du übergibst nur die Sortiervorgabe (Vergleichsfunktion) an die Sortiermethode und der Rest geht automatisch.


PS: Falls Du mal die Sortierung rumdrehen willst, kannst Du das z.B. so machen:

Delphi-Quellcode:
function CompareItem(Item1, Item2: Pointer): Integer;
begin
   Result := Math.CompareValue(TMyObject(Item1).ArtNr, TMyObject(Item2).ArtNr);
  if (Absteigend) then
    Result := -Result;
end;
Und falls Du statt nach ArtNr nach etwas anderem Sortieren willst, kannst Du das einfach in der Funktion ändern. So könnte man z.B. auch Personen nach Vornamen aufsteigend und bei Gleichheit anschließend Alter absteigend sortieren.
Die Funktion muss nur eindeutig -1, 1 oder 0 zurück liefern. Zufallswerte wären natürlich problematisch.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)

Geändert von stahli (11. Aug 2016 um 13:34 Uhr)
  Mit Zitat antworten Zitat