我想在TreeView控件里列出系统所有的驱动器和文件夹,以树形结构列出来.
请高手给个完整的源码.谢谢.

解决方案 »

  1.   

    http://www.codesky.net/article/doc/200308/2003082088578244.htm
      

  2.   

    看看能不能抢点分:
    procedure BuildFileTree(Tree: TTreeView);  procedure LoadSubDir(Node: TTreeNode; Dir: string);
      var
        F: TSearchRec;
        hFind: Integer;
        nChild: TTreeNode;
      begin
        if Dir[Length(Dir)] <> '\' then
          Dir := Dir + '\';    hFind := FindFirst(Dir + '*.*', FILE_ATTRIBUTE_DIRECTORY, F);
        while hFind = 0 do
        begin
          if (F.Name <> '.') and (F.Name <> '..') and
            (F.Attr and faDirectory = faDirectory) then
          begin
            nChild := Tree.Items.AddChild(Node, F.Name);
            LoadSubDir(nChild, Dir + F.Name);
          end;
          hFind := FindNext(F);
        end;
        FindClose(F);
      end;var
      DriveBits: set of 0..25;
      i: Integer;
      nDriver: TTreeNode;
      Dir: string;
    begin
      Tree.Items.BeginUpdate;
      try
        Tree.Items.Clear;
        Integer(DriveBits) := GetLogicalDrives;
        for i := 0 to 25 do
          if i in DriveBits then
          begin
            Dir := Chr(i + Ord('A')) + ':\';
            nDriver := Tree.Items.AddChild(nil, Dir);
            LoadSubDir(nDriver, Dir);
          end;
      finally
        Tree.Items.EndUpdate;
      end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      S: string;
    begin
      GetDir(0, S);
      ShowMessage(S);
      BuildFileTree(TreeView1);
    end;
      

  3.   

    [b]黑客程序员联盟QQ群号62058889大量招人~~~爱交流的人...长期不在线 潜水 不交流的人别进.*研究编程工具 远控工具 免杀工具 入侵工具 拿站工具等开发技术;一起把群搞好 谢谢~~~进群介绍下特长[/b]