MFC获取文件系统并将选择的文件路径显示在edit控件上

/*******************************************************************************
函数名称:FicowGetDirectory
函数说明:打开文件系统
输入参数:
无
输出参数:
无
返 回 值:
CString                          :选择的文件路径
作    者:lijilei
修改日期:2019-8-1
修改说明:基础版本
*******************************************************************************/
CString FicowGetDirectory()
{
	BROWSEINFO bi;
	char name[MAX_PATH];
	ZeroMemory(&bi, sizeof(BROWSEINFO));
	bi.hwndOwner = AfxGetMainWnd()->GetSafeHwnd();
	bi.pszDisplayName = name;
	bi.lpszTitle = "选择文件夹目录";
	bi.ulFlags = BIF_RETURNFSANCESTORS;
	LPITEMIDLIST idl = SHBrowseForFolder(&bi);
	if (idl == NULL)
		return "";
	CString strDirectoryPath;
	SHGetPathFromIDList(idl, strDirectoryPath.GetBuffer(MAX_PATH));
	strDirectoryPath.ReleaseBuffer();
	if (strDirectoryPath.IsEmpty())
		return "";
	if (strDirectoryPath.Right(1) != "\\")
		strDirectoryPath += "\\";

	return strDirectoryPath;
}

void CMFC_hejia_gwqDlg::OnBnClickedSelect()    //选择
{
	CString fileRoute = FicowGetDirectory();
	m_edit1 = fileRoute;
	UpdateData(false);  //将程序中改变的变量的值更新至控件中去
}

代码中m_edit1是edit控件添加的cstring类型值变量名称,OnBnClickedSelect函数为按钮单击事件函数

示例:

图一

图二

图三

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值