mfc按钮选择文件或者文件夹

选择文件夹:

	CString m_strFileOut = _T("");  //初始化适应Unicode

	TCHAR szSelected[MAX_PATH];//用来存放文件夹路径 
	BROWSEINFO bi;
	LPITEMIDLIST pidl;

	bi.hwndOwner = this->m_hWnd;
	bi.pidlRoot = NULL;
	bi.pszDisplayName = szSelected;
	bi.lpszTitle = _T("选择输出文件路径");
	bi.ulFlags = BIF_RETURNONLYFSDIRS;
	bi.lpfn = NULL;
	bi.lParam = NULL;
	bi.iImage = NULL;

	if ((pidl = SHBrowseForFolder(&bi)) != NULL)
	{
		if (SUCCEEDED(SHGetPathFromIDList(pidl, szSelected))) //得到文件夹的全路径,不要的话,只得本文件夹名  
		{
			m_strFileOut = szSelected;  	//获得文件夹的全路径
		}
	}

	LoadSTEP_Path = m_strFileOut;
	SetDlgItemText(IDC_EDIT2, m_strFileOut);//在文本编辑框显示文件夹绝对路径

选择文件:

	CString m_strFileOut = _T("");  //初始化适应Unicode
	TCHAR szFilter[] = _T("");  
	CFileDialog fileDlg(TRUE, NULL, NULL, 0, szFilter, this);

	// 显示打开文件对话框   s
	if (IDOK == fileDlg.DoModal())
	{
		// 如果点击了文件对话框上的“打开”按钮,则将选择的文件路径显示到编辑框里   
		m_strFileOut = fileDlg.GetPathName();
	}

	LoadSTEP_Path = m_strFileOut;
	SetDlgItemText(IDC_EDIT2, m_strFileOut);//文本编辑框显示所选文件绝对路径

你可能感兴趣的:(c++,mfc,windows,服务器)