Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Delphi - Ako urobiť používateľskú metódu na triedenie TStringList?

Takže triedenie mám hotové:

private
  ...
  function GraphSort(List: TStringList; Index1, Index2: Integer): Integer;
  ...
Priradenie metódy mám v CreateForm:
begin
  ...
  Values.CustomSort(GraphSort);
end;
Pri kompilácii mi píše chybu na uvedenom riadku v CreateForm s týmto textom:
[Error] uGraph.pas(111): Incompatible types: 'regular procedure and method pointer'
Chyba bude asi v deklarácii, ale keďže to robím prvýkrát, tak netuším kde.

Edit:
Skúsil som aj zápis
function GraphSort: TStringListSortCompare;
ale bez úspechu.

Edit 2:
Zatiaľ skúsim nájsť v Delphi zdroják TStringList a kuknúť, ako je to priradené tam. Teda ak také priradenie existuje, nakoľko tam je štandardné triedenie.

Edit 3:
Takže našiel som SCompare, ale nikde som nenašiel deklaráciu.:-(

Edit 4:
Ach, som ja ale hlupák, veď do SCompare sa ukladá tá metóda pomocou CustomSort, tak idem na to znova.

Edit 5:
Takže táto metóda nesmie patriť objektu, inak mi to neskompiluje. Lenže teraz mi to síce skompiluje, ale zruti sa to na tom istom riadkou s chybou Access violation. Tak tomu nerozummiem.:-|

Edit 6:
Napadlo ma, že nemôžem priraďovať, keď som nevytvoril objekt TStringList a tak som priradil triedenie v metóde FormShow. Stále mám Access violation.:-(

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny