打开文件夹保存对话框

在打开文件夹保存对话框的时候,windows 默认是没有“新建文件夹”这个按钮的。不过C++中可以使用扩展风格,将这个按钮给加上。

 

 1 //    打开文件夹
 2 BOOL PriOpenFolderDlg_(const CString dlgtitle, CString &dlgpath)
 3 {
 4     BOOL rl = FALSE;
 5     try
 6     {
 7         TCHAR path[255] = _T("");
 8         BROWSEINFO bi;    
 9         ZeroMemory(&bi, sizeof(BROWSEINFO));    // 指定存放文件的默认文件夹路径
10         bi.lpszTitle = dlgtitle;           //    显示的名字 
11         bi.ulFlags = BIF_RETURNONLYFSDIRS | 0x0040 ;    //    添加“新建文件夹项”
12         LPITEMIDLIST pidl = SHBrowseForFolder(&bi);        //    以默认路径打开浏览文件夹对话框
13         if(pidl != NULL)   
14         {
15             if ( !SHGetPathFromIDList(pidl, path) )    
16             {    
17                 return FALSE;
18             }
19         }
20         dlgpath = path;          //   即需要的文件夹路径
21         rl = TRUE;
22     }
23     catch(...)
24     {
25         rl = FALSE;
26     }
27     return rl;
28 }

 

posted @ 2015-02-27 16:47  王家^0^小轩  阅读(224)  评论(0编辑  收藏  举报