我要这个控件能返回一个文件夹的路径,界面就跟windows中复制文件时
那个'复制到'按钮点击后出现的那个文件夹树并不会显示具体文件
不跟openfiledialog显示的那样!有无这种控件,哪里有下载!

解决方案 »

  1.   

    如果是d6以上版本,example页上有现成的。
    也可以用SelectDirectory。
      

  2.   

    uses FileCtrl;const
      SELDIRHELP = 1000;
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Dir: string;
    begin
      Dir := 'C:\MYDIR';
      if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP) then
        Label1.Caption := Dir;
    end;
      

  3.   

    use Shlobj;var
     MyDirName: string;
     buffer: string;
     idList: PItemIDList;
     info: TBrowseInfo;
    begin
     SetLength(buffer, MAX_PATH);
     with info do
     begin
       hwndOwner := Form1.Handle;
       pidlRoot := nil;
       pszDisplayName := PChar(buffer);
       lpszTitle :=  PChar('请选择路径');
       ulFlags := BIF_RETURNONLYFSDIRS;
       lpfn := nil;
       lParam := 0;
       iImage := 0;
     end;
     idList := SHBrowseForFolder(info);
     if idList <> nil then
     begin
        SHGetPathFromIDList(idList, PChar(buffer));
        SetLength(buffer, StrLen(PChar(buffer)));
        MyDirName:=buffer;
     end; 
    end;