About Browsing the directory(关于浏览文件对话框的实践)

王朝other·作者佚名  2006-01-09
宽屏版  字体: |||超大  

在VC++编程中,有很多地方要用到文件夹浏览对话框,在version5.0版本(微软控件版本,一般在Windows2000之前)之前若想在文件夹浏览对话框上加一个新建文件夹按钮,需要自己编程来实现,现在在version5.0版本后,只需设置一个参数就可以了,而且有上下文菜单。如下图所示:(点此下载整个示例工程,本工程略加改动即可使用于自己的程序中。本工程亦可作为初学者的教程,一般教材很少讲文件夹浏览公用对话框的用法。)

示例工程中主要代码如下:

void CPathTestDlg::OnButtonBrowse()

{

CString str;

BROWSEINFO bi;

char name[MAX_PATH];

ZeroMemory(&bi,sizeof(BROWSEINFO));

bi.hwndOwner=GetSafeHwnd();

bi.pszDisplayName=name;

bi.lpszTitle="Select folder";

bi.ulFlags=80;

LPITEMIDLIST idl=SHBrowseForFolder(&bi);

if(idl==NULL)

return;

SHGetPathFromIDList(idl,str.GetBuffer(MAX_PATH));

str.ReleaseBuffer();

m_strSavePath=str;

if(str.GetAt(str.GetLength()-1)!='\\')

m_strSavePath+="\\";

UpdateData(FALSE);

}

其中bi.ulFlags 是对话框的格式,通过选定不同的参数来显示不同风格的对话框.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有