Главная страница
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.052 c
6-1083021747
shek
2004-04-27 03:22
2004.06.20
Upload на сайт


14-1086252507
Igorek
2004-06-03 12:48
2004.06.20
Физический серийный номер винта


14-1086088134
miwa
2004-06-01 15:08
2004.06.20
Проведите ликбез по криптографии, пожалуйста


1-1086690559
Videobaton
2004-06-08 14:29
2004.06.20
Помогите пожалуйста! Срочняк!


6-1083244244
Безнадежный Чайник
2004-04-29 17:10
2004.06.20
Как отправить данные формы?