Ich gebe noch etwas ungetesteten Code dazu:
Delphi-Quellcode:
procedure CustomSort(sl: TStringList; sc: TStringListSortCompare; const ida: array of integer);
var
s1, s2: TStrings;
function SortCompare(List: TStringList; Index1, Index2: Integer): Integer;
var
i: Integer;
begin
s1.CommaText := sl[Index1];
s2.CommaText := sl[Index2];
for i := Low(ida) to High(ida) do
begin
Result := CompareText(s1[ida[i]], s2[ida[i]]);
if Result <> 0 then Break;
end;
end;
begin
s1 := TStringList.Create;
s2 := TStringList.Create;
sl.CustomSort(sc);
s1.Free;
s2.Free;
end;
Grüße vom marabu