MFC使用CFileDialog单选文件

MFC界面如下

控件变量绑定

代码如下

	BOOL open_state = TRUE;											//记录对话框打开状态,True为打开,False为保存
	CString default_dir = _T("C:\\Users\\Administrator\\Desktop");	//默认目录名
	CString defalut_path = _T("C:\\Users\\Administrator\\"
		"Desktop\\Demo.jpg");										//默认路径名
	CString filter = _T("文件 (*.bmp;*.jpeg;*.jpg;*.png;*.tiff)|"
		"*.bmp;*.jpeg;*.jpg;*.png;*.tiff||");						//文件格式
	CFileDialog open_dialog(open_state, default_dir, defalut_path,
		OFN_HIDEREADONLY | OFN_READONLY, filter, NULL);				//创建open_dialog对象,以只读方式打开文件
	INT_PTR open_result = open_dialog.DoModal();					//记录打开结果
	if (open_result == IDOK)
	{
		m_path_name = open_dialog.GetPathName();					//路径名
		m_file_name = open_dialog.GetFileName();					//文件名
		m_file_ext = open_dialog.GetFileExt();						//扩展名
		m_read_only = open_dialog.GetReadOnlyPref();				//只读状态,非零,则在对话框中仅读取的复选框处于选中状态;否则为0。
		UpdateData(FALSE);											//将变量值传到控件上去
	}

结果如下

关于CFileDialog的多选模式,等以后用到我再研究

猜你喜欢

转载自blog.csdn.net/AlphaPoseidon/article/details/86736747