怎么让“另存为”对话框是模态对话框
如何让“另存为”对话框是模态对话框。
我程序中调用选择文件夹对话框
弹出的是非模态,即该对话框不关闭,任然可以执行程序上其他操作,如何让该对话框弹出后,如果不关闭,就不能响应程序其他按钮?让它成为模态对话框一样。
------解决方案--------------------
HWND hwndOwner;置空就是非模态的,置顶你自己应用程序的HWND就模态了。
要不就用MFC CFileDialog::domodal();
------解决方案--------------------
bi.hwndOwner
设置窗口的父窗口为当前窗口。
我程序中调用选择文件夹对话框
BROWSEINFO bi;
char strDirPath[256];
CString str;
LPITEMIDLIST pidl;
LPMALLOC pMalloc = NULL;
ZeroMemory(&bi, sizeof(bi));
bi.hwndOwner = NULL;
bi.pszDisplayName = NULL;
bi.lpszTitle =TEXT("please select save path");
//bi.ulFlags = BIF_RETURNFSANCESTORS|BIF_USENEMFODER ;
bi.ulFlags = BIF_EDITBOX|BIF_RETURNONLYFSDIRS|BIF_USENEMFODER;
bi.lpfn = BrowseCallBackFuntion; //回调函数
bi.lParam = (LPARAM)_T("D:\\");
bi.iImage = 0;
pidl = SHBrowseForFolder(&bi);
if(pidl)
{
SHGetPathFromIDList(pidl, strDirPath);
str = strDirPath;
}
else
{
str=oldname;
}
return str;
弹出的是非模态,即该对话框不关闭,任然可以执行程序上其他操作,如何让该对话框弹出后,如果不关闭,就不能响应程序其他按钮?让它成为模态对话框一样。
------解决方案--------------------
HWND hwndOwner;置空就是非模态的,置顶你自己应用程序的HWND就模态了。
要不就用MFC CFileDialog::domodal();
------解决方案--------------------
bi.hwndOwner
设置窗口的父窗口为当前窗口。