delphi 选择文件夹,路径选择,浏览文件夹

选择文件夹,路径选择,

文件夹

资源管理器

推荐  SelectDirectory

 http://docwiki.embarcadero.com/Libraries/Seattle/en/Vcl.FileCtrl.TSelectDirFileDlgOpts

Vcl.FileCtrl.hpp

if (!SelectDirectory("请选择目录","",DaoPath))
{
return;
}
SelectDirectory

#include "FileCtrl.hpp"
 
const SELDIRHELP = 1000;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  String Dir = "C:\Program Files\CodeGear";
  if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    Label1->Caption = Dir;
}

SHBrowseForFolder

http://bbs.csdn.net/topics/390017304

Vcl.Shell.ShellCtrls

TShellComboBox

TShellTreeView

TShellListView

文件名:

ShellListView1.Folders[ShellListView1.ItemIndex].PathName

ShellTreeView.SelectedFolder.PathName;

//2018.1.18

http://docwiki.embarcadero.com/Libraries/Tokyo/en/Vcl.FileCtrl.TSelectDirFileDlgOpts

能粘贴路径,选择路径,快速输入

procedure TForm.Button4Click(Sender: TObject);
var
  astrPath: tarray<string>; // 用户选定后的目录
begin
  //TSelectDirFileDlgOpt.sdHidePinnedPlaces
  if (SelectDirectory('请选择文件保存的路径', astrPath,  [sdNoDereferenceLinks])) then
  begin
    self.Caption := astrPath[0];
  end;

end;

procedure TForm.Button1Click(Sender: TObject);
const
  SELDIRHELP = 1000;
var
  Dir: string;
begin
  Dir := 'C:Windows';
  if Vcl.FileCtrl.SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt], SELDIRHELP) then
    self.Caption := Dir;
end;

 

参考写的很细,学习

https://www.cnblogs.com/huangygdelphi/articles/1969357.html


原文地址:https://www.cnblogs.com/cb168/p/4643930.html