vc++文件对话框

在MFC中,可以使用CFileDialog类,但是在如果ATL中,不支持MFC(其实混合可以使用)怎么办呢?其实,Windows编程,就是API的调用:

WCHAR szFile[1024]={0};   LPITEMIDLIST lpItemIDList = NULL;  BROWSEINFO bi = {0};  LPMALLOC lpMalloc = NULL;  SHGetMalloc(&lpMalloc);  bi.hwndOwner = hWndCtl;  bi.pidlRoot = NULL;  bi.pszDisplayName = szFile;  bi.lpszTitle = L"请选择保存文档的目录!";  bi.ulFlags = BIF_BROWSEINCLUDEFILES ;  bi.lpfn = NULL;  bi.lParam = 0;  lpItemIDList = SHBrowseForFolder(&bi);  if (!lpItemIDList)   return 0;  SHGetPathFromIDList(lpItemIDList, szFile);  lpMalloc->Free(lpItemIDList);  lpMalloc->Release();  CComBSTR sFile;  sFile.Append(szFile);

上面这段代码是打开选择文件夹的。

其中hWndCtl是一个窗口的HWND。

下面这一段则是打开文件选项de

 OPENFILENAME ofn = {0};  WCHAR szFile[1024]={0};  ofn.lStructSize  = sizeof(OPENFILENAME);  ofn.hwndOwner=this->m_hWnd;  ofn.lpstrFile = szFile;  ofn.nMaxFile = 1024;   ofn.lpstrTitle = L"保存文件夹";  ofn.Flags = OFN_EXPLORER|OFN_OVERWRITEPROMPT ;  // specify filter  ofn.lpstrFilter = TEXT("Word文档 (*.doc)/0*.doc/0");   CComBSTR sFile;  if (GetSaveFileName(&ofn))   sFile.Append(ofn.lpstrFile);  else   return 0;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值