Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

Как использовать CustomSort   Найти похожие ветки 

 
Канадин Владимир   (2004-06-04 22:16) [0]

Доброго времени суток.
Расскажите мне, слабоумному, как можно использовать CustomSort? Я пытаюсь использовать такой код:

function TForm1.MCL(List: TStringList; Index1, Index2: Integer): Integer;
var p1,p2 : String;
   i : integer;
begin
 i :=Pos(".",List[Index1]); p1:=Copy(List[Index1],i,Length(List[Index1])-i+1);
 i :=Pos(".",List[Index2]); p2:=Copy(List[Index2],i,Length(List[Index2])-i+1);
 if p1<p2 then MCL:=-1
 else if p2<p1 then MCL:=1
 else begin
   i :=Pos(".",List[Index1]); p1:=Copy(List[Index1],1,i);
   i :=Pos(".",List[Index2]); p2:=Copy(List[Index2],1,i);
   if p1<p2 then MCL:=-1
   else if p2<p1 then MCL:=1
   else MCL:=0;
 end;
end;

procedure TForm1.LoadZip(stFN : string);
var ai : TZFArchiveItem;
   MSL: TStringList;
begin
 MSL := TStringList.Create;
 ZF1.FileName := stFN;
 ZF1.OpenArchive(fmOpenRead);
 if ZF1.FindFirst("*.*",ai,faAnyFile-faDirectory) then
   repeat
     MSL.Add(ai.FileName);
   until not(ZF1.FindNext(ai));
 ZF1.CloseArchive;
 MSL.CustomSort(MCL); - здесь ругается - несоответствие типов.
 LB.Items.Clear;
 LB.Items.AddStrings(MSL);
 MSL.Free;
end;

Если вы знаете, как победить этого зверя, расскажите. Когда я писал в своих классах функцию и передавал ее имя объекту класса, все шло на ура, а в стандартном классе - не проходит.
Спасибо
Канадин Владимир.


 
panov ©   (2004-06-04 22:37) [1]

function MCL(List: TStringList; Index1, Index2: Integer): Integer;
...


 
panov ©   (2004-06-04 22:38) [2]

TStringListSortCompare - не должен быть методом


 
Канадин Владимир   (2004-06-07 21:15) [3]

К сожалению, у меня это не работает. Т.е. функция вызывается, выдает должный результат, но на экране не видно никаких отличий.



Страницы: 1 вся ветка

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
3-1085549246
Tomkat
2004-05-26 09:27
2004.06.20
FireBird на WinXP


9-1076512777
VolanD2002
2004-02-11 18:19
2004.06.20
DelphiX or Direct


4-1084300625
ipavels
2004-05-11 22:37
2004.06.20
Обновить конфигурацию оборудования


3-1085737599
sesh
2004-05-28 13:46
2004.06.20
коннект к базе в DLL


1-1086214347
Win64
2004-06-03 02:12
2004.06.20
Запуск (скрытый) консоли и получение из нее текста в листбоск