各位大侠!!巨难问题!!!! 请问各位大侠,在D中,如何让程序访问计算机中所有分区中的所有的目录和文件,用二叉树好像不行,用树不知道行不行,最好给出代码,谢谢!!!!!!(分不够再加) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 太容易了,有现成的Sample页里面的ShellTreeView就是你要的。 太简单了 -_-bfunction DecorateDirPath(aDirPath: String): string;begin if aDirPath[Length(aDirPath)]<> '\' then Result := aDirPath+'\' else Result := aDirPath;end;// 把目录结构与相应文件生成TreeViewprocedure AddTree(var aTreeView: TTreeView; aTypeName, Path : string; ParentNode: TTreeNode; IsAndFile: Boolean);var SearchRec : TSearchRec; IFound : integer; newnode : TTreeNode;begin Path := DecorateDirPath(Path); IFound := FindFirst(Path + aTypeName, faAnyFile, SearchRec); While IFound = 0 do begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then begin if SearchRec.Attr = faDirectory then begin newnode := aTreeView.Items.AddChild(ParentNode, SearchRec.Name); newnode.ImageIndex := 0; newnode.SelectedIndex := 1; AddTree(aTreeView, aTypeName, Path + SearchRec.Name, newnode, IsAndFile); end else begin if IsAndFile then begin newnode := aTreeView.Items.AddChild(ParentNode, SearchRec.name); newnode.ImageIndex := 2; newnode.SelectedIndex := 3; end; end; end; IFound := FindNext(SearchRec); end; FindClose(SearchRec);end;不用我教你怎么用吧 我想用一个线程来实现,我想CDSoftwareWj(95927)兄的方法还不错,先谢谢了!! 请问:这里的空应怎么填呀? fastReport图片打印问题材 如何编写软件来配置Ftp站点? 简单问题,来者有分!!!!!!!!!!!!! delphi与SQL连接问题 郁闷,散分! 急聘:程序设计师,学历无要求,可立即上班 。 如何实现这样的功能?请高人指点,急急,在线等 AdoQuery1有10条记录,增加并保存2条,在刷新时能否只刷新有变化的2条? 为什么我的"请问4个Delphi的小问题,(spring)"没有人答? 高手请进!!一个很奇怪的问题也许是一个想法!! 一个有趣的关于TListView删除多个节点的问题。
function DecorateDirPath(aDirPath: String): string;
begin
if aDirPath[Length(aDirPath)]<> '\' then
Result := aDirPath+'\'
else
Result := aDirPath;
end;// 把目录结构与相应文件生成TreeView
procedure AddTree(var aTreeView: TTreeView; aTypeName, Path : string; ParentNode: TTreeNode; IsAndFile: Boolean);
var
SearchRec : TSearchRec;
IFound : integer;
newnode : TTreeNode;
begin
Path := DecorateDirPath(Path);
IFound := FindFirst(Path + aTypeName, faAnyFile, SearchRec);
While IFound = 0 do
begin
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
if SearchRec.Attr = faDirectory then
begin
newnode := aTreeView.Items.AddChild(ParentNode, SearchRec.Name);
newnode.ImageIndex := 0;
newnode.SelectedIndex := 1;
AddTree(aTreeView, aTypeName, Path + SearchRec.Name, newnode, IsAndFile);
end
else begin
if IsAndFile then
begin
newnode := aTreeView.Items.AddChild(ParentNode, SearchRec.name);
newnode.ImageIndex := 2;
newnode.SelectedIndex := 3;
end;
end;
end;
IFound := FindNext(SearchRec);
end;
FindClose(SearchRec);
end;不用我教你怎么用吧