MFC应用实例:[26]选择文件夹对话框

 时间:2026-02-13 15:10:06

1、新建一个基于对话框的应用程序,应用程序名称为OpenDir。

MFC应用实例:[26]选择文件夹对话框

2、对对话框进行如下图的设计添加“打开文件夹”按钮,并对这个按钮添加对应的响应函数。

MFC应用实例:[26]选择文件夹对话框

3、在“打开文件夹”按钮的函数OnButtonOpendir()中添加一下代码:

#define BIF_NEWDIALOGSTYLE 0x0040

void COpenDirDlg::OnButtonOpendir() //打开目录

{

HWND hwnd= GetSafeHwnd();   //得到窗口句柄

CString filePath= ""; //得到文件路径

LPMALLOC pMalloc;

if (::SHGetMalloc(&pMalloc) == NOERROR) //取得IMalloc分配器接口

{   

BROWSEINFO bi;

TCHAR pszBuffer[MAX_PATH];

LPITEMIDLIST pidl;   

bi.hwndOwner = hwnd;

bi.pidlRoot = NULL;

bi.pszDisplayName = pszBuffer;

bi.lpszTitle = _T("选择文件夹"); //选择目录对话框的上部分的标题

//添加新建文件夹按钮 BIF_NEWDIALOGSTYLE

bi.ulFlags =  BIF_NEWDIALOGSTYLE | BIF_RETURNONLYFSDIRS | BIF_RETURNFSANCESTORS;

bi.lpfn = NULL;

bi.lParam = 0;

bi.iImage = 0;

if ((pidl = ::SHBrowseForFolder(&bi)) != NULL)  //取得IMalloc分配器接口

{   

if (::SHGetPathFromIDList(pidl, pszBuffer)) //获得一个文件系统路径

{

filePath = pszBuffer;

}

pMalloc->Free(pidl); //释放内存

MessageBox(filePath);

}

pMalloc->Release(); //释放接口

}

}

MFC应用实例:[26]选择文件夹对话框

4、程序运行如下:

MFC应用实例:[26]选择文件夹对话框

5、打开一个文件夹后如图:

MFC应用实例:[26]选择文件夹对话框

  • python回调函数怎么用
  • “default”标签跳过“ ”的初始化操作问题解决
  • DXP环形分布的经验总结
  • html实现显示隐藏效果
  • VS2019怎么修改颜色主题
  • 热门搜索
    江西庐山旅游 朱家角古镇旅游区 菲律宾旅游安全吗 天津旅游地图 换房旅游 广东省内旅游景点 长白山旅游最佳时间 沙湖旅游 祁连山旅游 沭阳旅游