简单画图软件〔初级篇〕义.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
简单画图软件〔初级篇〕义

简单画图软件的实现 指导教师:徐雅静 简单画图软件的实现 1、题目 2、相关MFC的知识 一、题目 名称:简单画图软件的实现 程序框架:基于单文档的应用程序。 软件形式: 可以参考Windows操作系统中“附件”里的画图软件。 一、题目 程序基本功能: 1. 能够绘制直线、曲线; 2.能够绘制各种形状,比如矩形、椭圆形等 3.能够绘制各种实心形状,比如实心矩形、实心椭圆等 4.能够添加文字 5.能够设置不同的绘制颜色 一、题目 程序可选功能: 1. 能够显示磁盘上已有的图片文件 2. 能够具备“橡皮擦”的功能,进行擦除 3. 能够保存绘制后的图形 4.其他认为应该增加的绘图功能 二、相关MFC的知识 1、创建基于单文档的工程 2、CView类的使用 3、CDC相关类的使用 4、菜单栏和工具条的使用 2. 创建基于单文档的工程 步骤 1、选择工程类别MFC AppWizard(exe) 2、选择应用程序类别 Single Document 3、不需支持数据库 4、不需支持额外的系统功能 5、选择程序外观 6、选择程序风格 7、确认相关类名称 8、完成 1、选择工程类别MFC AppWizard(exe) 2、选择应用程序类别Single Document 3、不需支持数据库 4、不需支持额外的系统功能 5、选择程序外观 6、选择程序风格 7、确认相关类名称 8、完成 运行 MFC单文档应用程序 包含四个主要的类: 应用类 主框架窗口类 文档类 视图类 系统自动生成的代码说明 1、CPaintApp类 应用类,该类中包含程序的入口函数InitInstance(),类似于main()函数。 对应的文件Paint.h和Paint.cpp。 系统自动生成的代码说明 2、CMainFrame类 框架类,用来显示一个标题、一个菜单条、窗口最大化和最小化键、边框、一个系统菜单、工具条以及状态条等。 对应的文件MainFrm.h和MainFrm.cpp 系统自动生成的代码说明 3、CPaintDoc类 由MFC的 CDocument类派生 负责存放程序数据并读写磁盘文件数据。 在建立一个图形系统时,存储图形元素的数据结构等都是放在文档类中。 对应的文件Paintdoc.h和Paintdoc.cpp。 系统自动生成的代码说明 4、CPaintView类 由MFC的类CView派生。 负责显示文档类的数据,可以显示在屏幕上,也可以输出到打印机或其他设备上。 负责处理用户的输入 在屏幕上,这个类管理客户窗口。 在实现一个图形系统时,屏幕上显示、打印机上绘图的工作都是由视图类完成的。 对应的文件Paintview.h和Paintview.cpp。 2、CView类的使用 一.CView类对象的工作机制 ⒈消息流 当CView类对象收到以各种方式传入的消息后,便会通过自己的一系列函数(如:Ondraw 、OnPrepareDC、OnPaint等)响应,然后再将消息传给专用于描述输出设备的CDC对象。 2、CView类的使用 基于MFC的应用程序内都含有一个缺省定义的CDC类对象,所以当应用软件系统执行时,一个CView 类对象实际上已经与一个缺省的CDC类对象连接起来了。 一个Windows 应用软件系统在其视图中显示的全部成份通常是经过CView类的成员函数OnDraw(…)传递给与之相连的CDC类对象的。 2、CView类的使用 OnDraw函数是被CView类下的消息处理函数OnPaint()调用的。 OnPaint()函数的代码: void CView::OnPaint() { //standard paint routine CPaintDC dc(this); OnPrepareDC(dc); OnDraw(dc); } 2、CView类的使用 当WM_PAINT消息产生时,如果用户应用程序的视图类中没有对OnPaint函数重载, 则该消息发给基类CView的OnPaint(), 再调用用户应用程序的OnDraw(…)。 CView的OnDraw是纯虚函数。故要想在应用程序中显示内容,重载OnDraw, 或重载OnPaint. 3、CDC相关类的使用 绘图要用到MFC的类CDC、CPaintDC、CClientDC、CWindowDC等,其中 CDC类是基类,另外几个类是为了特殊应用由其派生出来的。 3、CDC相关类的使用 一. 绘图类CDC类简介 CDC类是CObject类的一个派

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档