Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: TStringList CustomSort
17. Okt 2005, 10:44
Hi killer,
die StringList stellt dir eine Methode CustomSort() zur Verfügung, die verwendest du so:
Delphi-Quellcode:
const
CRANKING = '+%@&~';
function CustomCompare(List: TStringList; Index1, Index2: Integer): Integer;
var
s1, s2: string;
r1, r2: char;
begin
s1 := List[index1];
s2 := List[index2];
r1 := s1[1];
r2 := s2[1];
Delete(s1, 1, 1);
Delete(s2, 1, 1);
if Pos(r1, CRANKING) > Pos(r2, CRANKING) then Result := -1 else
if Pos(r1, CRANKING) < Pos(r2, CRANKING) then Result := 1 else
Result := AnsiCompareText(s1, s2);
end;
procedure TDemoForm.SortButtonClick(Sender: TObject);
begin
UserList.CustomSort(CustomCompare);
ListBox.Items.Assign(UserList);
end;
Grüße vom marabu
|
|
Zitat
|