本文整理自网络,侵删。
//正序function SortItem(List: TStringList; Index1, Index2: Integer): Integer;var A1, A2: String; Dir1, Dir2: String; Name1, Name2: String;begin//delphitop.com A1 := List[Index1]; A2 := List[Index2];
Dir1 := ExtractFilePath(A1); Dir2 := ExtractFilePath(A2);
Name1 := ExtractFileName(A1); Name2 := ExtractFileName(A2);
if Dir1 = Dir2 then Result := AnsiCompareText(Name1, Name2) else Result := AnsiCompareText(Dir1, Dir2);end;
//倒序function SortItem2(List: TStringList; Index1, Index2: Integer): Integer;var A1, A2: String; Dir1, Dir2: String; Name1, Name2: String;begin A1 := List[Index1]; A2 := List[Index2]; //delphitop.com Dir1 := ExtractFilePath(A1); Dir2 := ExtractFilePath(A2);
Name1 := ExtractFileName(A1); Name2 := ExtractFileName(A2);
if Dir1 = Dir2 then Result := AnsiCompareText(Name2,Name1 ) else Result := AnsiCompareText(Dir2, Dir1);end;
procedure TForm1.Button1Click(Sender: TObject);varFList: TStringList;beginFList:=TStringList.Create;FList.Text:=Memo1.Text;FList.CustomSort(SortItem);Memo1.Text:=FList.Text;end;
相关阅读 >>
monthoftheyear:取得一个tdatetime变量的月份在年度中的索引
processid, process handle, window handle 之间的互相转换
Delphi windows 编程[5] - 学习窗体生成的过程五
更多相关阅读请进入《Delphi》频道 >>