Windows编程实验6报告_甘加升.docx
上传人:qw****27 上传时间:2024-09-12 格式:DOCX 页数:10 大小:90KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

Windows编程实验6报告_甘加升.docx

Windows编程实验6报告_甘加升.docx

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

武汉轻工大学Windows编程实验报告题目:文档与视图专业:软件工程班级:软件工程1202学号:1205110519姓名:江师朗指导老师:刘文涛2014年12月28日[程序1:]文档数据和视图显示。编写单文档程序,为文档对象添加数据成员recno(int类型),表示学号,stuname(CString类型)表示姓名,并在视图中输出文档对象中的内容。要求当按向上箭头或按向下箭头时,学号每次递增1或递减1,能在视图中反映学号变化。实验步骤:(1)首先建立一个单文档程序。(2)在文档类添加类的成员变量。头文件:public:intrecno;CStringstuname;并在实现文件里构造函数中初始化:CDemo1Doc::CDemo1Doc(){//TODO:addone-timeconstructioncodehererecno=1;stuname="慕火";}(3)在ClassWizard里面利用消息映射(MessageMaps)在对应类中(如*View)添加对WM_KEYDOWN的响应函数。添加下面阴影部分的代码。voidCDemo1View::OnKeyDown(UINTnChar,UINTnRepCnt,UINTnFlags){//获取文档类的指针CDemo1Doc*pDoc=GetDocument();switch(nChar){caseVK_UP://上//学号递增pDoc->recno++;break;caseVK_DOWN://下//学号递减pDoc->recno--;break;}//刷新客户区,重新绘制Invalidate();CView::OnKeyDown(nChar,nRepCnt,nFlags);}(4)在视图类的OnDraw函数实现在客户区显示姓名和学号。添加下面阴影的代码:voidCDemo1View::OnDraw(CDC*pDC){CDemo1Doc*pDoc=GetDocument();ASSERT_VALID(pDoc);CStringmessage;message.Format("学号:%d,姓名:%s",pDoc->recno,pDoc->stuname);//在客户区显示姓名和学号pDC->TextOut(0,0,message);}(5)调试运行。按键盘里的向上键时学号递增,向下键时学号递减。【程序2:单文档综合程序】实验步骤:(1)添加一个描述学生信息的类。选择vc++的菜单project-》AddtoProject-》New,新建一个头文件StudentInfo.hStudent代码://StudentInfo.h文件内容classCStudentInfo:publicCObject{CStringstrName;//姓名CStringstrNO;//学号BOOLbMale;//性别,是否为男CTimetBirth;//出生年月CStringstrSpecial;//专业DECLARE_SERIAL(CStudentInfo)//序列化声明public:CStudentInfo(){};CStudentInfo(CStringname,CStringid,BOOLmale,CTimebirth,CStringspecial);voidSerialize(CArchive&ar);voidDisplay(inty,CDC*pDC);//在坐标为(0,y)处显示数据};(2)选择vc++的菜单project-》AddtoProject-》New,新建一个实现文件StudentInfo.cpp//StudentInfo.cpp文件内容#include"stdafx.h"#include"StudentInfo.h"CStudentInfo::CStudentInfo(CStringname,CStringid,BOOLmale,CTimebirth,CStringspecial){strName=name;strNO=id;bMale=male;tBirth=birth;strSpecial=special;}voidCStudentInfo::Display(inty,CDC*pDC){CStringstr,strSex("女");if(bMale)strSex