目录树(50分)

  • 主题发起人 主题发起人 zytzjx
  • 开始时间 开始时间
Z

zytzjx

Unregistered / Unconfirmed
GUEST, unregistred user!
谁有一个如C++中的SysViewTree32,是显示一个98风格的目录树。不是Win31下的。能显示桌面与网上邻居
 
以前做过,有个API函数,记不清楚了。
你只需指定用于显示目录树的窗口句柄即可。
ACDSEE就是这样做的。
 
如果是弹出窗口,用SelectDirectory就可以.
 
刚看了一个例子,哈哈。
uses FileCtrl, ShlObj;
procedure TForm1.btnBrowseClick(Sender: TObject);
var
bi: TBrowseInfo;
pidl: pItemIdList;
strpath: string;
begin
bi.hwndOwner := Handle;
bi.pidlRoot := nil;
bi.pszDisplayName := '';
bi.lpszTitle := 'Select a folder';
bi.ulFlags := bif_StatusText;
bi.lpfn := nil;
bi.lParam := 0;

pidl := ShBrowseForFolder (bi);

SetLength (strPath, 100);
ShGetPathFromIdList (pidl, PChar(strPath));
Edit1.Text := strPath;
end;
 
Delphi的selectdirectory已经封装了ShBrowseForFolder函数,看一下Vcl的源代码就知道了.
 
多人接受答案了。
 
后退
顶部