基于MFC的简单画图程序实验.docx

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
专业 专业.专注 简单画图程序 实验目的】 本实验目的是通过构建基于 MFC的windows画图程序,使学生: 理解MFC应用程序的运行机制 掌握使用MFC构建Windows应用程序的基本结构及编程的基本方法 理解和掌握MFC应用程序消息处理机制及应用 掌握类向导(ClassWizard)的使用 实验要求】 必须做好实验原理的预习。 需要对提供的程序代码进行分析,并明确实验时还应在何处添加哪些语句 实验环境】 Microsoft Win dows XP Microsoft Visual C++ 6.0 1基本功能描述 在单文档菜单中,在菜单行中可插入一个菜单项,命名为绘图,在下拉菜单中可 分别设置绘制的图形形状,如直线、矩形及椭圆,线宽选项,有1-5可供选择,还可以设 置线色以及填充色,通过弹出的颜色对话框选择需要的颜色 ,如果不选择线宽、线色以 及填充色,则按默认的画笔,画刷来绘制选择的图形。 选择好图形后,通过鼠标可以绘制出相应的直线,矩形或椭圆,鼠标的按下确定 图形的起点,鼠标的拖动则确定了图形的终点,即通过鼠标的拖动来决定图形的大小 , 当鼠标弹起,此图形则绘制完毕。 增添工具栏,设置绘制的图形形状,线色以及填充色,可更方便地选择相应的功 2设计思路 对需要用到的变量进行初始化。 选择相应的图形之后就响应相应的消息处理函数 ,给shape赋对应的值。选择不 同的线宽,线色与填充色,即可改变画笔或画刷的属性。 鼠标的按下响应函数 OnLButtonDown(),捕捉鼠标当前位置得到起点的坐标,鼠 标的拖动响函数 OnMouseMove()改变终点的坐标,鼠标的弹起响应 OnLButtonUp(),确 定终点坐标,刷新,得到绘制图形。 选择图形或其它属性,可进行下一次绘制。 开始 定义并初始化变 shape 线色m_ncolor 填充色 m_fcolor 画笔 pen 画 刷brush绘图起点 opoint绘图终点cpoint 改变画笔属性默认值(w=1) 改变画笔属性 默认值(w=1) 选择线色 改变画刷属性默认值(黑色)响应函数On Line() shape=1响应函数On Rect() shape=2响应函数 On Ellipse。shape=3 改变画刷属性 默认值(黑色) 响应函数 On Line() shape=1 响应函数 On Rect() shape=2 响应函数 On Ellipse。 shape=3 鼠标左键按下 opo in t=po int 响应函数 OnLButtonDown() 鼠标移动响应函数 OnMouseMove()epoint=point 响应On Pai nt(),绘制图形 鼠标左键弹起响应函数OnLButtonUp() 刷新,得到图形 图1程序流程图 3软件设计 3.1设计步骤 创建单文档 创建一个MFC AppWizard[exe]工程,命名为“inshuyan ”,如图2所示,并创建单文 档,如图3所示。创建成功后,系统自动生成相应的类,如图4所示 图2创建工程 图3创建单文档 -i^yinshuayn classes + ■ : CAboutDIg + F CMainFrame + CYinshuaynApp + ■ 1 CYinshuaynDoc + *1? CYinshuaynView 十二J Giobals 图4生成类 2) 编辑菜单 添加需要的菜单项,如图5所示(可以通过拖动调整菜单的顺序);并在菜单的属性 中设定好所对应的ID,如图6所示,各项菜单对应的ID如表1所示(其中线宽菜单为弹 出菜单,只需在菜单项目属性中的弹出选项前打勾即可 ,分隔线亦只需在菜单项目属性 中选中分隔符(Separator)选项即可)。 cla^s nwmberE] * .OnPoint J* -JJyinshuyan resources * * i^JAccelerator + 2] Dialog + _J Icon -勻 Menu g||lDR MAiNFRAMt + J String Table + £] Toolbar 文件世)编辑电)査看⑩ 绘團 帮助QD [ j图5添加菜单项 文件世)编辑电)査看⑩ 绘團 帮助QD [ j 图5添加菜单项 图6设置菜单ID 表1 菜单项对应ID 菜单名 ID 菜单名 ID 直线 ID_LINE 线宽1 ID_W1 矩形 ID_RECT 线宽2 ID_W2 椭圆 ID_ELLIPSE 线宽3 ID_W3 颜色 ID_COLOR 线宽4 ID_W4 填充色 ID_FILLCOLOR 线宽5 ID_W5 建立类向导,在视图类 CyinshuyanView (通过菜单 View-ClassWizard ,或者快捷 键Ctrl+w打开)中,对各菜

文档评论(0)

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

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

1亿VIP精品文档

相关文档