- 2
- 0
- 约6.25千字
- 约 12页
- 2021-09-11 发布于山东
- 举报
完好word版,C++实验报告(MFC简单绘图程序)
完好word版,C++实验报告(MFC简单绘图程序)
完好word版,C++实验报告(MFC简单绘图程序)
VC++ 程序设计实验报告
一、实验目的
掌握 MFC 编程
二、实验内容
用 MFC 导游创立单文档应用程序,一个简单的绘图程序。使用 C++语言实现
使用 VC ++ 6.0 集成开发环境开发
使用 MFC 应用程序开发框架
三、实验步骤
基本功能描绘
翻开 exe 文件,在绘图下拉菜单中可分别设置绘制的图形形状, 如直线、曲线、矩形及椭圆,线宽选项,有 1-6 可供选择,线型选项有实线、虚线、点线和点段线供设置, 还能够设置线色以及填补色, 经过弹出的颜色对话框选择需要的颜色,假如不选择线宽、线色以及填补色,则按默认的画笔,画刷来绘制选择
的图形。
选择好图形后, 经过鼠标能够绘制出相应的直线, 矩形或椭圆, 鼠标的按下确立图形的起点, 鼠标的拖动则确立了图形的终点, 即经过鼠标的拖动来决
定图形的大小,当鼠标弹起,此图形则绘制完成。
设计思路
对需要用到的变量进行初始化。
选择相应的图形以后就响应相应的信息办理函数, 给 shape赋对应的值。选择不一样的线宽,线色与填补色,即可改变画笔或画刷的属性。
鼠标的按下响应函数 OnLButtonDown() ,捕获鼠标目前地点获得起点的坐标,鼠标的拖动响函数 OnMouseMove()改变终点的坐标,鼠标的弹起响应
OnLButtonUp() ,确立终点坐标,刷新,获得绘制图形。
选择图形或其余属性,可进行下一次绘制。
软件设计
设计步骤
创立单文档
创立一个 MFC AppWizard[exe] 工程,命名为“ Draw”,如图 1 所示,并创
建单文档,如图 2 所示。创立成功后,系统自动生成相应的类,如图 3 所示。
图 1 创立工程
图 2 创立单文档
图3 生成类
编写菜单
增添需要的菜单项,如图 4 所示;并在菜单的属性中设定好所对应的 ID,如图 5 所示,各项菜单对应的 ID 如表 1 所示(此中线宽菜单为弹出菜单,只要
在菜单项目属性中的弹出选项前打勾即可, 分开线亦只要在菜单项目属性中选中
分开符选项即可)。
图 4 增添菜单项
图 5 设置菜单 ID
表 1 菜单项对应 ID
菜
ID
菜单名
ID
菜单名
ID
单
名
直
ID_LINE
线宽 1
ID_W1
实线
ID_SOLID
线
矩
ID_RECT
线宽 2
ID_W2
虚线
ID_DASH
形
椭
ID_ELLIPS
线宽 3
ID_W3
点线
ID_DOT
圆
E
颜
ID_COLOR
线宽 4
ID_W4
点段线
ID_DASHDOT
色
填
ID_FILLCO
线宽 5
ID_W5
充LOR
色
成立类导游,在视图类 CDrawView 中,对各菜单项增添对应的 COMMAND 信息办理函数,部分菜单项还增添对应的 UPDATE_COMMAND_UI 信息函数,如图 6 所示。
图 6 成立类导游
在相应信息函数处增添代码,实现其功能
成立类导游,在视图类 CDrawView 中,增添 WM_PAINT 信息,以及
WM_LBUTTONDOWN 、WM_LBUTTONUP 、WM_MOUSEMOVE 信息,并在
此中增添相应的代码。
重点功能实现
选摘要绘制的图形
在直线、矩形以及椭圆的信息办理函数里为 shape 分别赋值为 1,2,3 ,在
OnPaint()函数里增添 3 个 if 语句的代码来这实现这三个图形的绘制:入选择画直线时, shape=1,则履行绘制直线代码,入选择画矩形时, shape=2, 则履行绘制矩形的代码,当性选择画椭圆时 , shape=3, 则履行绘制椭圆的代码。
改变线宽
在 OnPaint()创立的画笔中, pen.CreatePen(penstyle,w,m_nColor),线宽处用
w 表示,则改变 w 的值即改变了画笔的粗细。选择菜单绘图→线宽选择划线宽
度值,此时所选的线宽值就赋给线宽变量 w。若不选择线宽值,则 w=1( 即默认
线宽值为 1) 。
改变线型
在 OnPaint()创立的画笔中, pen.CreatePen(penstyle,w,m_nColor) ,线型处用
penstyle 表示,则改变 penstyle 的值即改变了画笔的种类。选择菜单绘图→线型
选择线型,此时所选的线型就赋给线型变量 penstyle。若不选择线型值,则
penstyle=ID_SOLID(即默认线型为实线 ) 。
改变线色
在 OnPaint()创立的画笔中, pen.CreatePen(penstyle,w,m_nColor) ,线的颜色处用 m_nColor 表示,则改
您可能关注的文档
最近下载
- (2026春新版)冀教版三年级数学下册全册PPT课件(完整版).pptx
- 五年级下册美术课件-鲜花送英烈-赣美版.ppt VIP
- 社会体育导论PTPPT课件讲义.ppt VIP
- 2025年部编版四年级语文下册第一单元《乡村生活》单元作业设计.pdf VIP
- (完整word版)七巧板原图word打印版.doc VIP
- 《人工智能通识基础》全套教学课件.pptx
- SY∕T 7329-2016 油田化学剂中有机氯含量测定方法.pdf VIP
- 主治医师资格(全科医学301)考试历年真题及答案.pdf VIP
- 2025年吉安职业技术学院单招语文测试试卷真题题库.docx VIP
- 环保技术有限公司质量手册(完整版)资料.doc VIP
原创力文档

文档评论(0)