Einzelnen Beitrag anzeigen

BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hannover-Hainholz
801 Beiträge
 
Delphi 11 Alexandria
 
#1

Error: Inkompatible Typen Reguläre Prozedur u Methodenzeiger

  Alt 31. Aug 2007, 15:12
Ich habe mir eine eigene Klasse von TList abgeleitet. Dieser möchte ich eine Sortierfunktion hinzufügen. Dazu muss man der vorhandenen TList-Funktion Sort etwas vom Typ TListSortCompare übergeben. Ich bekomme es nicht hin. An der markierten Stelle kommt die Fehlermeldung "Inkompatible Typen: Reguläre Prozedur und Methodenzeiger"

Delphi-Quellcode:
  TMyList = class(TList)
  private
     SortedColumn: Integer;
     function MyListSortCompare(Item1, Item2: Pointer): Integer;
  public
     procedure SortByColumn(Column: Integer);
  end;

procedure TMyList.SortByColumn(Column: Integer);
begin
  SortedColumn := Column;
  Sort(MyListSortCompare); //<-- FEHLER: Inkompatible Typen: Reguläre Prozedur und Methodenzeiger
end;

function TMyList.MyListSortCompare(Item1, Item2: Pointer): Integer;
begin
  result := MachWas(Item1, Item2, SortedColumn);
end;
  Mit Zitat antworten Zitat