2个回答
展开全部
把下面的代码,放到你的按钮函数下:
char szPath[MAX_PATH]; //存放选择的目录路径
CString str;
ZeroMemory(szPath, sizeof(szPath));
BROWSEINFO bi;
bi.hwndOwner = m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = szPath;
bi.lpszTitle = "请选择需要打包的目录:";
bi.ulFlags = 0;
bi.lpfn = NULL;
bi.lParam = 0;
bi.iImage = 0;
//弹出选择目录对话框
LPITEMIDLIST lp = SHBrowseForFolder(&bi);
if(lp && SHGetPathFromIDList(lp, szPath))
{
str.Format("选择的目录为 %s", szPath);
AfxMessageBox(str);
}
else
AfxMessageBox("无效的目录,请重新选择");
char szPath[MAX_PATH]; //存放选择的目录路径
CString str;
ZeroMemory(szPath, sizeof(szPath));
BROWSEINFO bi;
bi.hwndOwner = m_hWnd;
bi.pidlRoot = NULL;
bi.pszDisplayName = szPath;
bi.lpszTitle = "请选择需要打包的目录:";
bi.ulFlags = 0;
bi.lpfn = NULL;
bi.lParam = 0;
bi.iImage = 0;
//弹出选择目录对话框
LPITEMIDLIST lp = SHBrowseForFolder(&bi);
if(lp && SHGetPathFromIDList(lp, szPath))
{
str.Format("选择的目录为 %s", szPath);
AfxMessageBox(str);
}
else
AfxMessageBox("无效的目录,请重新选择");
2013-04-01
展开全部
void CDialog1::OnButton1() { // TODO: Add your control notification handler code here CString sFolderPath; BROWSEINFO bi; char Buffer[MAX_PATH + 1100]; //memset(&bi,0,sizeof BROWSEINFO); //memset(Buffer,0,MAX_PATH+1000); //char Buffer[MAX_PATH + 100]; //初始化入口参数bi开始 bi.hwndOwner = NULL; bi.pidlRoot =NULL;//初始化制定的root目录--------很不容易 bi.pszDisplayName = Buffer;//此参数如为NULL则不能显示对话框 bi.lpszTitle = "请选择查找目录"; //bi.ulFlags = BIF_BROWSEINCLUDEFILES;//包括文件 //bi.ulFlags=BIF_RETURNONLYFSDIRS; // bi.ulFlags = BIF_EDITBOX;//包括文件夹 bi.lpfn = NULL; bi.iImage=IDR_MAINFRAME; //初始化入口参数 bi 结束 LPITEMIDLIST pIDList = SHBrowseForFolder(&bi);//调用显示选择对话框 if(pIDList) { SHGetPathFromIDList(pIDList, Buffer); //取得文件夹路径到 Buffer里 sFolderPath = Buffer;//将文件夹路径保存在一个CString对象里 SetDlgItemText(IDC_EDIT1,sFolderPath); }
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询