Delphi-Quellcode:
function SuperduperSort(Item1, Item2: Pointer): integer;
begin
Result := TArtValues(Item1).ArtNr - TArtValues(Item2).ArtNr;
end;
...
FVArtValues.Sort(SuperduperSort);
Ich bin mir ziemlich sicher, dass das Ergebnis nicht zwingend unbedingt 0, 1 oder -1 sein muss. Sollte ich mich irren, kann man das Funktionsergebnis ja noch mit Math.Sign auf den richtigen Wert bringen.