欢迎来到天天文库
浏览记录
ID:37854235
大小:633.50 KB
页数:27页
时间:2019-06-01
《MFC 文档视图小程序详细步骤》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、文档视图上机指导书【例8.1】文档视图结构应用程序例子(Ex_DocView)。(1)创建基于CFormView类的多文档应用程序用MFCAppWizard(exe)创建一个默认的多文档应用程序Ex_DocView,但在向导的第六步将CEx_DocViewView的基类由默认的CView选择为CFormView类,如图8.2所示。图8.2设置视图的基类为CFormView类(2)添加应用程序所需的数据■第一步在VisualC++中,选择菜单【插入】à【新建类】,打开新建类对话框。在“Classtype
2、”组合框中选择GenericClass,类名为CStudent,默认的类文件为Student.cpp,设置该类的父类为CObject,并单击【OK】按钮。如图8.3所示。图8.3添加CStudent类■第二步打开项目工作区的文件视图,双击打开Student.h文件,如图8.4所示,编辑CStudent类定义的代码如下:classCStudent:publicCObject{public:longm_nCode;CStringm_sName;longm_lAge;doublem_lScore;CStud
3、ent();CStudent(long,CString,long,double);virtual~CStudent();};图8.4打开Student.h文件■第三步同上步,编辑Student.cpp文件,修改类CStudent的构造函数实现代码如下:CStudent::CStudent(longcode,CStringname,longage,doublescore){m_nCode=code;m_sName=name;m_lAge=age;m_lScore=score;}■第四步在Ex_DocVi
4、ewDoc.h文件中,为类CEx_DocViewDoc添加数据成员:classCEx_DocViewDoc:publicCDocument{……public:POSITIONcurPos;CTypedPtrListm_dataList;……}说明:m_dataList定义为CStudent类指针的表CtypedPtrList变量,curPos定义为POSITION变量,用来指示当前指针。■第五步在文件stdafx..h中加入添加如下代码:#include5、empl.h>因为在程序中使用了模板类CTypedPtrList。■第六步在Ex_DocViewDoc.h文件的头部添加如下代码:#include"Student.h"■第七步在文档关闭时,需要清除m_dataList占用的内存,利用属性窗口为CEx_DocViewDoc类加入虚函数DeleteContens(),并添加代码:voidCEx_DocViewDoc::DeleteContents(){while(!m_dataList.IsEmpty())delet6、em_dataList.RemoveHead();CDocument::DeleteContents();}(3)修改IDD_EX_DOCVIEW_FORM对话框资源,添加应用程序所需控件:■第一步打开项目工作区的资源视图,双击打开IDD_EX_DOCVIEW_FORM对话框资源如图8.5所示,编辑IDD_EX_DOCVIEW_FORM对话框资源,如图8.6所示。图8.5打开对话框资源图8.6编辑后的对话框控件■第二步设置图8.6各控件的属性如表8.1所示。表8.1添加的控件控件ID标题其他属性编辑框7、(学号)IDC_CODE默认编辑框(姓名)IDC_NAME默认编辑框(年龄)IDC_AGE默认编辑框(成绩)IDC_SCORE默认按钮(添加)IDC_ADD添加默认按钮(下一个)IDC_NEXT下一个默认■第三步打开MFCClassWizard的MemberVariable页面,确定ClassName是CEx_DocViewView,如图8.7所示。选中所需的控件ID号,双击鼠标。依次为下列控件添加成员变量,如下表8.2所示。图8.7为CEx_DocViewView添加成员变量表8.2控件变量ID成员8、变量名属性类型变量类型IDC_CODEm_nCodeValueUINTIDC_NAMEm_sNameValueCStringIDC_AGEm_lAgeValuelongIDC_SCOREm_lScoreValuedouble(4)为按钮编写消息响应函数■第一步用MFCClassWizard为按钮IDC_ADD添加BN_CLICKED的消息映射,如图8.8所示,单击【添加函数】按钮为CEx_DocViewView添加OnAdd()成员函数,再单击【编辑代码
5、empl.h>因为在程序中使用了模板类CTypedPtrList。■第六步在Ex_DocViewDoc.h文件的头部添加如下代码:#include"Student.h"■第七步在文档关闭时,需要清除m_dataList占用的内存,利用属性窗口为CEx_DocViewDoc类加入虚函数DeleteContens(),并添加代码:voidCEx_DocViewDoc::DeleteContents(){while(!m_dataList.IsEmpty())delet
6、em_dataList.RemoveHead();CDocument::DeleteContents();}(3)修改IDD_EX_DOCVIEW_FORM对话框资源,添加应用程序所需控件:■第一步打开项目工作区的资源视图,双击打开IDD_EX_DOCVIEW_FORM对话框资源如图8.5所示,编辑IDD_EX_DOCVIEW_FORM对话框资源,如图8.6所示。图8.5打开对话框资源图8.6编辑后的对话框控件■第二步设置图8.6各控件的属性如表8.1所示。表8.1添加的控件控件ID标题其他属性编辑框
7、(学号)IDC_CODE默认编辑框(姓名)IDC_NAME默认编辑框(年龄)IDC_AGE默认编辑框(成绩)IDC_SCORE默认按钮(添加)IDC_ADD添加默认按钮(下一个)IDC_NEXT下一个默认■第三步打开MFCClassWizard的MemberVariable页面,确定ClassName是CEx_DocViewView,如图8.7所示。选中所需的控件ID号,双击鼠标。依次为下列控件添加成员变量,如下表8.2所示。图8.7为CEx_DocViewView添加成员变量表8.2控件变量ID成员
8、变量名属性类型变量类型IDC_CODEm_nCodeValueUINTIDC_NAMEm_sNameValueCStringIDC_AGEm_lAgeValuelongIDC_SCOREm_lScoreValuedouble(4)为按钮编写消息响应函数■第一步用MFCClassWizard为按钮IDC_ADD添加BN_CLICKED的消息映射,如图8.8所示,单击【添加函数】按钮为CEx_DocViewView添加OnAdd()成员函数,再单击【编辑代码
此文档下载收益归作者所有