网站大量收购闲置独家精品文档,联系QQ:2885784924

C++实验报告(MFC简单画图程序).docx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精选 . VC++程序设计实验报告 一、实验目的 掌握 MFC 编程 二、实验内容 用 MFC 向导创建单文档应用程序,一个简单的画图程序。 使用 C++语言实现 使用 VC++6.0 集成开发环境开发 使用 MFC 应用程序开发框架 三、实验步骤 基本功能描述 1. 打开 exe 文件,在绘图下拉菜单中可分别设置绘制的图形形状, 如直线、 曲线、矩形及椭圆,线宽选项,有 1-6 可供选择,线型选项有实线、虚线、点线 和点段线供设置, 还可以设置线色以及填充色, 通过弹出的颜色对话框选择需要 的颜色,如果不选择线宽、线色以及填充色,则按默认的画笔,画刷来绘制选择 的图形。 2. 选择好图形后, 通过鼠标可以绘制出相应的直线, 矩形或椭圆, 鼠标的 按下确定图形的起点, 鼠标的拖动则确定了图形的终点, 即通过鼠标的拖动来决 定图形的大小,当鼠标弹起, 此图形则绘制完毕。 设计思路 1. 对需要用到的变量进行初始化。 2. 选择相应的图形之后就响应相应的消息处理函数,给 shape 赋对应的 值。选择不同的线宽,线色与填充色,即可改变画笔或画刷的属性。 3. 鼠标的按下响应函数 OnLButtonDown(),捕捉鼠标当前位置得到起点的 坐标,鼠标的拖动响函数 OnMouseMove(改)变终点的坐标,鼠标的弹起响应 OnLButtonUp(,) 确定终点坐标,刷新,得到绘制图形。 4. 选择图形或其它属性,可进行下一次绘制。 软件设计 A 设计步骤 1.创建单文档 创建一个 MFC AppWizard[exe]工程, 命名为“Draw”,如图 1 所示,并创 建单文档,如图 2 所示。创建成功后, 系统自动生成相应的类,如图 3 所示。 精选 . 图 1 创建工程 图 2 创建单文档 精选 . 图 3 生成类 2.编辑菜单 添加需要的菜单项,如图 4 所示;并在菜单的属性中设定好所对应的 ID, 如图 5 所示,各项菜单对应的 ID 如表 1 所示(其中线宽菜单为弹出菜单,只需 在菜单项目属性中的弹出选项前打勾即可, 分隔线亦只需在菜单项目属性中选中 分隔符选项即可)。 图 图 4 添加菜单项 精选 . 图 5 设置菜单 ID 表 1 菜单项对应 ID I ID ID_LINE ID_RECT ID_ELLIPS E ID_COLOR ID_FILLCO LOR ID ID_SOLID ID_DASH ID_DOT ID_DASHDOT 菜单名 线宽 1 线宽 2 线宽 3 线宽 4 线宽 5 菜单名 实线 虚线 点线 点段线 ID ID_W1 ID_W2 ID_W3 ID_W4 ID_W5 椭 圆 颜 色 填 充 色 直 线 矩 形 菜 单 名 建立类向导,在视图类 CDrawView 中,对各菜单项添加对应的 COMMAND 消 息处理函数,部分菜单项还添加对应的 UPDATE_COMMAND_UI 消息函数,如图 6 所示。 精选 . 图 6 建立类向导 3.在相应消息函数处添加代码,实现其功能 建立类向导,在视图类 CDrawView 中,添加 WM_PAINT 消息,以及 WM_LBUTTONDOWN、WM_LBUTTONUP、WM_MOUSEMOVE 消息,并在其中添加相应的代 码。 B 关键功能实现 1.选择要绘制的图形 在直线、矩形以及椭圆的消息处理函数里为 shape 分别赋值为 1,2,3,在 OnPaint()函数里添加 3 个 if 语句的代码来这实现这三个图形的绘制: 当选择画 直线时, shape=1,则执行绘制直线代码,当选择画矩形时, shape =2,则执行绘 制矩形的代码,当性选择画椭圆时,shape=3,则执行绘制椭圆的代码。 2.改变线宽 在 OnPaint()创建的画笔中, pen.CreatePen(penstyle,w, m_nColor),线 宽处用 w 表示, 则改变 w 的值即改变了画笔的粗细。 选择菜单绘图→线宽选择划 线宽度值, 此时所选的线宽值就赋给线宽变量w。若不选择线宽值, 则 w=1(即默 认线宽值为 1)。 精选 . 3.改变线型 在 OnPaint()创建的画笔中, pen.CreatePen(penstyle,w, m_nColor),线 型处用 penstyle 表示, 则改变 penstyle 的值即改变了画笔的类型。 选择菜单绘 图→线型选择线型,此时所选的线型就赋给线型变量 penstyle。若不选择线型 值,则 penstyle=ID_SOLID(即默认线型为实线)。 4.改变线色 在 OnPaint()创建的画笔中, pen.CreatePen(penstyle,w, m_nColor),线 的颜色处用 m_n

文档评论(0)

文档查询,农业合作 + 关注
官方认证
内容提供者

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

认证主体土默特左旗农特农机经销部
IP属地内蒙古
统一社会信用代码/组织机构代码
92150121MA0R6LAH4P

1亿VIP精品文档

相关文档