- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Tree说明文档.doc
Tree说明文档
功能说明:用MFC建立多文档(MDI)应用程序。在主窗口中添加选项,使之能够选择文件夹。在子窗口中添加选项,使之能够对选定的文件夹进行操作,如:打开选定的文件夹中的文件、在选定的文件夹中写入指定的文本文件、在选定的文件夹中读出指定的文本文件、打开选定的文件夹中的文件夹。
主窗口如下图所示:
子窗口如下图所示:
操作步骤:
首先用MFC建立多文档(MDI)应用程序,取工程名为“Tree”。
在主窗口的“文件”选项中添加“打开文件夹”选项,设置ID为ID_OPEN_DIR ,通过“建立类向导”在CTreeApp中为其添加方法OnOpenDir() , 点击该选项后出现如下对话框:
代码如下:
注:首先在Tree.cpp文件首部声明CString StrFolder;
//StrFolder保存了选择的文件夹的路径BROWSEINFO bi; //声明浏览结构BROWSEINFO对象bi
void CTreeApp::OnOpenDir() //用于选择一个文件夹
{memset(bi, 0, sizeof(BROWSEINFO) );
//以下通过对BROWSEINFO成员变量的设置实现文件夹的选择
bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT;
//设置变量使得只返回文件夹并且在对话框上显示状态文本
bi.lpszTitle=选择文件夹;
bi.pidlRoot =SHBrowseForFolder(bi);//显示一个对话框使用户可以选择文件夹
// BROWSEINFO类的参数pidlRoot指明根文件夹从哪一级开始展开
if(bi.pidlRoot ==NULL)
return;
SHGetPathFromIDList(bi.pidlRoot,StrFolder.GetBuffer(MAX_PATH));
//将指定目录转换为文件路径
StrFolder.ReleaseBuffer();
AfxMessageBox(当前选择的文件夹为:+StrFolder);
CTreeApp::OnFileNew();//打开一个文件,从而转到子窗口
}
二、在子窗口中添加“对文件夹的操作”选项
(1)在“对文件夹的操作”选项中添加“打开当前文件夹中的文件”选项,设置ID为ID_OPEN_FILE ,通过“建立类向导”在CMyTreeView中为其添加方法OnOpenFile() ,点击该选项后出现如下对话框:(假设通过主窗口的“打开文件夹”选项,选择的是F盘)
代码如下:
注:首先在TreeView.cpp文件首部声明extern CString StrFolder;
extern BROWSEINFO bi;
void CMyTreeView::OnOpenFile() //打开选定的文件夹中的文件
{
// TODO: Add your command handler code here
CString file;
if(StrFolder==)//判断选择的文件夹的路径是否为空值
{
AfxMessageBox(尚未设定默认目录!);
}
else
{
CFileDialog dlg(TRUE);
TCHAR lpstrInitialDir[256];
strcpy(lpstrInitialDir,StrFolder);//实现从CString到TCHAR的转换
dlg.m_ofn.lpstrInitialDir=lpstrInitialDir;//设置文件打开对话框启动时的目录位置
dlg.m_ofn.lpstrTitle=我的自定义文件夹;//设置文件对话框标题
if(IDOK==dlg.DoModal())
{
file=dlg.GetPathName(); //获取选择的文件路径
AfxMessageBox(打开的文件是:+file);
}
}
}
(2)在“对文件夹的操作”选项中添加“写入”选项,设置ID为ID_WRITE ,通过“建立类向导”在CMyTreeView中为其添加方法OnWrite() ,点击该选项后出现如下对话框:
代码如下:
注:首先在TreeView.cpp文件首部声明extern CString StrFolder;
extern BROWSEINFO bi;
void CMyTreeView::OnWrite() //在选择的文件夹中创建fread.txt文件
//并在其中写入z~b这25个字符
{
// TODO: Add your
您可能关注的文档
最近下载
- TZS 0678—2025《生物安全实验室工作人员本底血清样本管理规范》(水印版).pdf VIP
- 2025年工会基础知识考试题库及参考答案(通用版).pptx VIP
- 抗菌药物的合理使用课件(共37张PPT).pptx VIP
- 急危重症患者护理抢救流程与规范.pptx VIP
- 平衡梁组件的承压检测装置.pdf VIP
- 2025年最新工会基础知识考试题库及参考答案(通用版).pptx VIP
- 44-无机复合聚苯不燃保温板应用技术规程T_CIEEMA002-2020.pptx VIP
- 供货方案及质量保证措施 .docx VIP
- 殡葬领域突出问题专项整治行动实施方案.docx VIP
- T_ACEF 207—2025(工业有机废气收集系统技术规范).pdf
文档评论(0)