(转)记录:VC++中打开保存目录选择对话框操作

来源:互联网 发布:须奈子家淘宝什么名字 编辑:程序博客网 时间:2024/04/29 01:47

//打开文件对话框

const char pszFilter[] = _T("EXE File (*.txt)|*.txt|All Files (*.*)|*.*||");CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,pszFilter, this);dlg.m_ofn.lpstrInitialDir = "c:\\WINDOWS\\" //设置对话框默认呈现的路径if(dlg.DoModal() == IDOK){       CString strFilePath = dlg.GetPathName();      /*如果有多个文件,则      for(POSITION pos = dlg.GetStartPosition(); pos!=NULL; )      { CString strFilePathName = dlg.GetNextPathName(pos);}*/}

//保存文件对话框

 

const char pszFilter[] = _T("EXE Files (*.txt)|*.txt||");CFileDialog dlgSave( FALSE, //FALSE为保存_T(".txt"), //自动加上的扩展名_T("Output.txt"), //默认保存的文件名OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,pszFilter, this);

 

//目录选择对话框

 

BROWSEINFO bi;char szPathName[MAX_PATH];char szTitle[] = "选择路径"ZeroMemory(&bi, sizeof(BROWSEINFO));bi.hwndOwner = GetSafeHwnd();bi.pszDisplayName = szPathName;bi.lpszTitle = szTitle;bi.ulFlags = 0x0040 ; CString str;CString strDir; //选择的目录LPITEMIDLIST idl = SHBrowseForFolder(&bi);if(idl == NULL){     strDir= ""     return;}SHGetPathFromIDList(idl, str.GetBuffer(MAX_PATH * 2));str.ReleaseBuffer();if(str != "" && str.GetAt(str.GetLength() - 1) != '\\')str += "\\"strDir = str;

 

 

 

 

原创粉丝点击