在MFC上遇到一个问题,如何在MFC上实现一个按钮选择文件,另一个按钮把该文件读出来并显示在Edit里面,
3个回答
展开全部
有必要那么复杂?选择也不就是为了显示吗?给你一个一步到位代码:
void CInputBox::OnBnClickedRead()
{
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.lpstrFilter=_T("文本文件(*.txt)\0\0");
//定义标题
fileDlg.m_ofn.lpstrTitle=_T("导入");
fileDlg.m_ofn.lpstrDefExt=_T("txt");
if(IDOK==fileDlg.DoModal())
{
CFile file(fileDlg.m_ofn.lpstrFile,CFile::modeRead);
CStringA strFile;//在Unicode环境中,需要使用CStringA类型的变量接收数据。
file.Read(strFile.GetBufferSetLength(file.GetLength()),file.GetLength());
file.Close();//关闭文件对象
strFile.ReleaseBuffer(); // 释放缓冲区域
SetDlgItemText(IDC_EDIT_INPUT,CString(strFile));
}
}
void CInputBox::OnBnClickedRead()
{
CFileDialog fileDlg(TRUE);
fileDlg.m_ofn.lpstrFilter=_T("文本文件(*.txt)\0\0");
//定义标题
fileDlg.m_ofn.lpstrTitle=_T("导入");
fileDlg.m_ofn.lpstrDefExt=_T("txt");
if(IDOK==fileDlg.DoModal())
{
CFile file(fileDlg.m_ofn.lpstrFile,CFile::modeRead);
CStringA strFile;//在Unicode环境中,需要使用CStringA类型的变量接收数据。
file.Read(strFile.GetBufferSetLength(file.GetLength()),file.GetLength());
file.Close();//关闭文件对象
strFile.ReleaseBuffer(); // 释放缓冲区域
SetDlgItemText(IDC_EDIT_INPUT,CString(strFile));
}
}
追问
谢谢啦。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
源代码见附件,很简单。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询