zoukankan      html  css  js  c++  java
  • MFC打开文件选择框和多选框,保存文件夹的选择,保存文件路径的选择

    CString defaultDir = "C:\";   //默认打开的文件路径  
    	CString fileName = "";         //默认打开的文件名  
    	CString filter = "文件 (*.pdf)|*.pdf||";   //文件过虑的类型  
    	CFileDialog openFileDlg(TRUE, defaultDir, fileName, OFN_HIDEREADONLY, filter, NULL);
    	//openFileDlg.GetOFN().lpstrInitialDir = "E:\FileTest\test.doc";
    	INT_PTR result = openFileDlg.DoModal();
    	CString filePath;
    	if (result == IDOK) {
    		filePath = openFileDlg.GetPathName();
    		m_fileList.clear();
    		Pdf2Png *pdf = new Pdf2Png();
    		m_fileList = pdf->runPdfToPng(filePath.GetBuffer());
    		
    		for (int i = 0; i < (int)m_fileList.size(); i++)
    		{
    			_cprintf("%s
    ", m_fileList[i]);
    		}
    		delete pdf;
    		const int len = 100;
    		sciter::value arr[len];
    		for (int i = 0; i < (int)m_fileList.size(); i++)
    		{
    			arr[i] = sciter::value(m_fileList[i].GetBuffer());
    		}
    		return sciter::value(arr, m_fileList.size());
    	}
    

      

    CString defaultDir = "C:\";   //默认打开的文件路径  
    	CString fileName = "";         //默认打开的文件名  
    	CString filter = "文件 (*.jpg; *.jpeg; *.png; *.bmp)|*.jpg;*.jpeg;*.png;*.bmp||";   //文件过虑的类型  
    	CFileDialog openFileDlg(TRUE, defaultDir, fileName, OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT, filter, NULL);
    	//openFileDlg.GetOFN().lpstrInitialDir = "E:\FileTest\test.doc";
    	INT_PTR result = openFileDlg.DoModal();
    	CString filePath;
    	if (result == IDOK) {
    		//filePath = openFileDlg.GetPathName();
    		POSITION pos = openFileDlg.GetStartPosition();
    		while (pos != NULL)
    		{
    			filePath = openFileDlg.GetNextPathName(pos);
    		}
    	}
    

      保存文件路径选择

    TCHAR szDir[MAX_PATH];
    	BROWSEINFO bi;
    	ITEMIDLIST *pidl;
    	bi.hwndOwner = this->m_hWnd;
    	bi.pidlRoot = NULL;
    	bi.pszDisplayName = szDir;//这个是输出缓冲区   
    	bi.lpszTitle = _T("选择输出文件夹:"); //标题  
    	bi.ulFlags = BIF_NEWDIALOGSTYLE;//使用新的界面,在win7中效果较好//BIF_RETURNONLYFSDIRS;   
    	bi.lpfn = NULL;
    	bi.lParam = 0;
    	bi.iImage = 0;
    	pidl = SHBrowseForFolder(&bi);//弹出对话框   
    	if (pidl == NULL)//点了取消,或者选择了无效的文件夹则返回NULL  
    		return sciter::value("false");
    
    	if (SHGetPathFromIDList(pidl, szDir))
    	{
    		savePathDir = szDir;
    		m_root = this->get_root();
    		sciter::thread(thread_saveImageAndText, cutSaveInfo);
    	}
    

      

    CFileDialog dlg(FALSE);///TRUE为OPEN对话框,FALSE为SAVE AS对话框
    	if (dlg.DoModal() == IDOK)
    	{
    		savePathDir = dlg.GetPathName();
    		_cprintf("%s
    ", savePathDir);
    	}
    

      

  • 相关阅读:
    广度遍历有向图
    坚持的力量 第二十一篇
    坚持的力量 第二十二篇
    搜索引擎首页
    安装ubuntu
    最小生成树之Kruskal算法
    最小生成树之PRIM算法
    文件同步软件
    [恢]hdu 2151
    [恢]hdu 1396
  • 原文地址:https://www.cnblogs.com/mypsq/p/6626196.html
Copyright © 2011-2022 走看看