函数
intFolderBrowser(charpath[MAX_PATH],char*title="请选择:")
{
BROWSEINFObi;
ITEMIDLIST*pidl;
bi.hwndOwner=NULL;
bi.pidlRoot=NULL;
bi.pszDisplayName=path;
bi.lpszTitle=title;
bi.ulFlags=BIF_EDITBOX;
bi.lpfn=NULL;
bi.lParam=0;
bi.iImage=0;
pidl=SHBrowseForFolder(&bi);
return(pidl&&SHGetPathFromIDList(pidl,path));
}
{
BROWSEINFObi;
ITEMIDLIST*pidl;
bi.hwndOwner=NULL;
bi.pidlRoot=NULL;
bi.pszDisplayName=path;
bi.lpszTitle=title;
bi.ulFlags=BIF_EDITBOX;
bi.lpfn=NULL;
bi.lParam=0;
bi.iImage=0;
pidl=SHBrowseForFolder(&bi);
return(pidl&&SHGetPathFromIDList(pidl,path));
}
调用方法:
voidCDownloadFileDlg::OnButton1()
{
UpdateData();
charbuf[MAX_PATH]={0};
if(FolderBrowser(buf))
{
m_path=buf;
UpdateData(FALSE);
}
}
{
UpdateData();
charbuf[MAX_PATH]={0};
if(FolderBrowser(buf))
{
m_path=buf;
UpdateData(FALSE);
}
}
本文介绍了一个用于打开文件夹选择对话框的C++函数`FolderBrowser`,该函数允许用户选择文件夹路径,并将选定的路径返回给调用者。此外,还提供了一个示例,展示了如何在`CDownloadFileDlg`类的方法`OnButton1`中调用此函数来更新文件夹路径。
687

被折叠的 条评论
为什么被折叠?



