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);
    	}
    

      

  • 相关阅读:
    python2和python3的区别
    开发常用命令
    类中的内置方法
    while 循环
    sql执行效率,explain 查询执行效率
    jmeter 中的 HTTP URL Re-writing Modifier
    jmeter beanshell内容
    jmeter 和 ajax
    jdbc 与 each controller 对多条查询结果的处理
    jdbc与 Beanshell PostProcessor 对多条结果的处理
  • 原文地址:https://www.cnblogs.com/mypsq/p/6626196.html
Copyright © 2011-2022 走看看