Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8181493
  • 博文数量: 1227
  • 博客积分: 10026
  • 博客等级: 上将
  • 技术积分: 20273
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-16 12:40
文章分类

全部博文(1227)

文章存档

2010年(1)

2008年(1226)

我的朋友

分类: C/C++

2008-03-18 14:09:14

下载本文示例代码
在VC++编程中,有很多地方要用到文件夹浏览对话框,在version5.0版本(微软控件版本,一般在Windows2000之前)之前若想在文件夹浏览对话框上加一个新建文件夹按钮,需要自己编程来实现,现在在version5.0版本后,只需设置一个参数就可以了,而且有上下文菜单。如下图所示:(点此下载整个示例工程,本工程略加改动即可使用于自己的程序中。本工程亦可作为初学者的教程,一般教材很少讲文件夹浏览公用对话框的用法。)
示例工程中主要代码如下:
void CTestBrowseDlg::OnBrowse() 
{
 CString str;
 BROWSEINFO bi;
 char name[MAX_PATH];
 ZeroMemory(&bi,sizeof(BROWSEINFO));
 bi.hwndOwner=GetSafeHwnd();
 bi.pszDisplayName=name;
 bi.lpszTitle="Select folder";
 bi.ulFlags=BIF_USENEWUI;
 LPITEMIDLIST idl=SHBrowseForFolder(&bi);
 if(idl==NULL)
  return;
 SHGetPathFromIDList(idl,str.GetBuffer(MAX_PATH));
 str.ReleaseBuffer();
 m_Path=str;
 if(str.GetAt(str.GetLength()-1)!=''\\'')
  m_Path+="\\";
 UpdateData(FALSE);
}
本工程在VC++7.0+WindowsXP中调试通过。
通信地址:(024000)内蒙赤峰市93106部队自动化站
下载本文示例代码
阅读(1682) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~