请教StringGrid问题(100分)

  • 主题发起人 主题发起人 mong
  • 开始时间 开始时间
M

mong

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何将某一目录下(包括子目录)的文件显示在StringGrid中,如下格式
所属目录   文件名
c:/download/a a.txt
c:/download/b b.txt
...... .......
 
自己写代码就是了:
stringgrid1.cell[2,3]:='……';
 
for i:=0 to stringgrid1.colcount-1 do
for l:=0 to stringgrid1.rowcount-1 do
begin
stringgrid1.cell[i,l]:=.....
end;
 
谢谢,我已用递归读出所有的文件,不过不知道如何对应显示其上级目录,请指教
 
procedure Tform1.FileSearch(PathName:string);
var
F : TSearchRec;
Found : Boolean;
begin
ChDir(PathName);
Found := (FindFirst('*.*', faDirectory, F) = 0);
while Found do
begin
if (F.Name = '.') or (F.Name = '..') then
begin
Found := (FindNext(F) = 0);
Continue;
end;
if (F.Attr and faDirectory)>0 then
begin
Application.ProcessMessages;
FileSearch(F.Name);
end;
Found := (FindNext(F) = 0);
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cols[0].Add(GetCurrentDir);
StringGrid1.Cols[1].Add(F.name);
end;
FindClose(F);
ChDir('../');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
FileSearch('C:/ACD/');
StringGrid1.ColWidths[0] := 300;
end;

//然后对StringGrid做一个排序就行了,这个你应该会了吧。
 
接受答案了.
 
后退
顶部