Einzelnen Beitrag anzeigen

Andreas L.
(Gast)

n/a Beiträge
 
#1

ObjectList nach Datum sortieren

  Alt 26. Jan 2008, 13:21
Hi,
ich versuche gerade die Items einer ObjectList nach Datum zu sortieren. Die Sortierroutine soll direkt beim hinzufügen eines Items aufgerufen werden. Erstmal mein Code:
Delphi-Quellcode:
function TCalcForm.Add(Value: TCalcFormValue):Integer;
var
  i: Integer;
begin
  fValues.Add(Value);
  fValues.Sort(CompareDate); //Fehler: [Pascal Fehler] CalcForm.pas(106): E2009 Inkompatible Typen: 'Reguläre Prozedur und Methodenzeiger'
  for i := 0 to fValues.Count -1 do //damit der Rückgabewert wieder dem ItemIndex des neuen Objekts entspricht
   begin
     if fValues[i] = Value then
       Result := i;
   end;
end;

function TCalcForm.CompareDate(Item1, Item2: Integer):Integer;
var
  Val1, Val2: TDateTime;
begin
  val1 := (fValues[Item1] as TCalcFormValue).Date;
  val2 := (fValues[Item2] as TCalcFormValue).Date;
  Result := CompareDate(Val1, Val2);
end;
Da es bei der ObjectList kein CustomSort gibt, dachte ich, dieses Sort könnte man genauso aufrufen wie hier: http://www.delphipraxis.net/internal...atum+sortieren

Die Delphi-Hilfe spuckt mir folgendes aus: procedure Sort(Compare: TListSortCompare);
Es gibt leider keinen Hilfeeintrag zu TListSortCompare. Wie komme ich trotzdem an mein Ziel?
  Mit Zitat antworten Zitat