找到VisualC60自动创建的CView类的虚拟成员函数OnDraw
* * 实验一 图形程序设计基础 一. 概述: 本实验是在Microsoft Visual C++ 6.0平台上,建立一个Project,并在该Project的View文件内,找到Visual C++ 6.0自动创建的CView类的虚拟成员函数OnDraw(CDC* pDC),并在该函数内添加相应的绘图程序,绘图程序通过CDC类指针pDC调用相应的绘图土函数,来完成所需图形的绘制。 因此,在此实验中,除了要掌握Visual C++ 6.0平台上编制图形程序的步骤之外,还应初步了解MFC的结构,尤其需要了解与绘图有关的相关类的关系和类中成员函数的调用方式。 MFC结构如下: 二.实验的主要目的: 1、让学生掌握利用Microsoft Visual C++ 6.0平台,进行图形程序设计的基本方法与步骤; 2、训练学生利用计算机分析和解决实际问题的能力; 3、锻炼学生撰写科技实验报告的能力。 三.实验步骤: 建立工程: ①打开Visual C++; ②选择File→New→Projects→MFC AppWizard[exe],在Project Name内输入工程名(如FtistP),并在Location选择程序文件存储路径,最后点击OK。 2. 选择欲创建的文档类型: 在Step1对话框中,选择Single Document或Multiple Documents或Dialog based中任意一项均可,但后续操作不一样。(如选Multiple Documents)点击Finish(若还有其他需要则选Next); 在如下New Project Information框内下点击OK。 3. 编写图形程序: 在如上图所示的此新建的Project内,Workspace视窗下选择FileView,然后点击FirstP Files展开它,在Source Files中找到FirstPView.cpp文件,在该文件中找到CView类下的列函数: void CFirstPView::OnDraw(CDC* pDC) { CFirstPDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here (添加代码处) } 在该函数内添加相应的绘图程序代码,图形形状不作统一要求,可自由设计,代码自己编写,也可用教材上P20实例来练习。 教材上P20实例代码如下: //使用缺省画笔画了一条直线,画笔的属性是实线型、1个像素宽、黑色 pDC-MoveTo (100,100); pDC-LineTo (200,200); CPen *pOldPen; //申请一个画笔指针,用于保存当前设备环境下的画笔 CPen dashPen; //以下创建画笔并绘制直线 //创建一个画笔,其属性是虚线型、1个像素宽、红色 dashPen.CreatePen (PS_DASH,1, RGB(255,0,0)); //PS_SOLID: Pen is solid; ///PS_DASH: Pen is dashed;PS_DOT: Pen is dotted;PS_DASHDOT: Pen has alternating dashes and dots //PS_DASHDOTDOT; PS_INSIDEFRAME: Pen is solid; PS_NULL: Pen is invisible pOldPen=pDC-SelectObject (dashPen); //选择新画笔,用pOldPen保留原画笔 pDC-LineTo(300,100); //使用新画笔绘制直线 pDC-SelectObject (pOldPen); //绘制完毕一定要恢复原画笔 pDC-LineTo (400,200); //再次使用原画笔再绘制直线 4.编译调试程序,直到通过运行后得到需要的结论。 注: 若在: void CFirstPView::OnDraw(CDC* pDC) { CFirstPDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for na
您可能关注的文档
- 广州炎热指数对早产滞后效应的时间序列分析-RedIsAllcom.PDF
- 广东水利科技创新项目申请书填写要求-科学研究院.DOC
- 广联达公司2005上半年用户满意度调查综合报告.PPT
- 床医师资格考试第一站病例分析-医学试验实训中心.DOC
- 床边盲视法放置鼻肠营养管在危重症患者中的应用-中华临床营养杂志.PDF
- 常见症状评价.PDF
- 应用CAT量表评价肺康复对慢性阻塞性肺疾病患者生活质量的干预效果.PDF
- 床边急诊ERCP在重症急性胆源性胰腺炎治疗中的应用16例.PDF
- 应用德尔菲法构建男男性行为者个体HIV感染风险-中华流行病学杂志.PDF
- 应用品管圈降低ICU出凝血功能检验非计划性复检率的-中国护理管理.PDF
原创力文档

文档评论(0)