MFC文档视图程序

MFC文档视图程序

ID:39466195

大小:6.59 MB

页数:16页

时间:2019-07-04

MFC文档视图程序_第1页
MFC文档视图程序_第2页
MFC文档视图程序_第3页
MFC文档视图程序_第4页
MFC文档视图程序_第5页
资源描述:

《MFC文档视图程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、深圳市计算机行业协会培训中心C/C+培训教程文档视图程序课程编号C07课程内容DocumentView应用程序基本结构、各主要类之间的功能及相互联系方法、数据的序列化介绍编写日期2006-03-13作者李伟(bingweiwei-2001@163.com)16深圳市计算机行业协会培训中心C/C+培训教程目录1.Document/View结构31.1.各类功能以及相互联系方法介绍32.单文档Document/View应用程序举例32.1.应用程序类CDocViewLineApp42.2.文档模板(CSingleDocTempla

2、te/CMultipleDocTemplate)42.3.框架窗口类CMainFrame:42.4.文档类CDocViewLineDoc52.5.视图类CDocViewLineView52.6.应用程序帮助信息对话框CAboutDlg53.工程实现步骤及主要代码54.数据的存取的实现134.1.添加提醒存盘代码154.2.定义存盘文件扩展名164.3.程序运行结果1616深圳市计算机行业协会培训中心C/C+培训教程1.Document/View结构Document/View(文档/视图)结构的引入,使得应用程序将数据处理和数据处

3、理的任务分离开来。View(视图)负责提供一个屏幕窗口,用户可以通过它可以看见并管理窗口。Document(文档类)负责控制和存储数据。1.1.各类功能以及相互联系方法介绍AppWizard生成Document/View结构的应用程序时,把程序分为4个主要类:l从CDocument派生的文档类:负责程序中数据的管理;从CView类派生的视图类:负责数据的显示和用户之间的交互;l从CFramWnd派生的框架窗口类:包括视图和其他用户界面组件,如菜单、工具栏、状态栏等;l从CWinApp派生的应用程序类:负责启动程序,处理一些应用程

4、序初始化、应用实例初始化的工作。MFC提供如下访问方法来实现这些类之间的联系:lAfxGetMainWnd获得CFramWnd类的窗口句柄;lAfxGetApp获得CWinApp的指针;lAfxGetAppName获得应用程序名;lAfxGetInstanceHandle获得应用程序的句柄;lAfxGetResourceHandle获得应用程序当前装载的资源句柄;lGetDocument获得指向文档类的指针,是CView类的成员函数;lGetActiveDocument获得当前文档类的指针,是CFramWnd类的成员函数;lUp

5、dateAllView用于更新与文档相关联的视图,是CDocument类成员函数;lGetActiveAllView获得当前活动视图的指针,是CFramWnd类的成员函数;lGetNextView与GetFirstViewPosition一起使用,获得任一视图的指针,是CDocument类成员函数。2.单文档Document/View应用程序举例下面以一个实现画线的典型单文档(SDI)应用程序为例详细说明。代码实例中蓝色代码为手工添加代码,分开列出来是便于详细说明个功能项代码编写以及步骤。详细代码请参见完整工程代码。按照以下步骤

6、创建一个单文档应用程序框架如下:工程名为DocViewLine,Step1-6采用默认选项即可。该应用程序完成直线的绘制,重绘,存盘。应用程序向导自动生成如下应用程序框架:16深圳市计算机行业协会培训中心C/C+培训教程图7-11.1.应用程序类CDocViewLineApp该类负责充当整个应用程序的容器;也就是说无论框架窗口还是文档以及视图,都已经包括在该应用程序中。他的基类CwinApp负责应用程序的创建,初始化,运行及清理。类成员函数InitInstance()负责创建一个文档模板来管理文档/视图及框架窗口。CSingle

7、DocTemplate*pDocTemplate;pDocTemplate=newCSingleDocTemplate(IDR_MAINFRAME,RUNTIME_CLASS(CDocViewLineDoc),RUNTIME_CLASS(CMainFrame),//mainSDIframewindowRUNTIME_CLASS(CDocViewLineView));AddDocTemplate(pDocTemplate);1.2.文档模板(CSingleDocTemplate/CMultipleDocTemplate)该类负责在

8、运行时动态创建文档、视图和框架窗口并进行协调它们之间的工作。1.3.框架窗口类CMainFrame:对于单文档应用程序,该框架类是整个应用程序的窗口,直接与文档视图关联。对于多文档应用程序,分主框架窗口类和子窗口类,子窗口位于主窗口内部,可跟主窗口共享菜单。16

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。