VC程序设计课程设计绘图应用程序的设计和实现.doc

VC程序设计课程设计绘图应用程序的设计和实现.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
唐 山 学 院 VC程序设计 课 程 设 计 题 目 绘图应用程序的设计和实现 系 (部) 计算机科学与技术系 班 级 06计算机科学与技术1班 姓 名 任招静 学 号 2060206124 指导教师 郭琳虹 2009 年 06 月 29 日至 07 月 03 日 共 1 周 2009年 7 月 3 日 VC程序设计 课程设计任务书 一、设计题目、内容及要求 1、设计题目:绘图应用程序的设计与实现 2、设计内容及要求: 利用MFC应用程序、图形处理的基本知识,设计一个绘图应用程序,具有以下功能:①图形绘制功能:直线、椭圆、矩形、文本(必须实现的功能)②图形修改功能:线条颜色、线条类型、填充方式的设置(必须实现的功能)③数据保存功能:能够把图形数据保存到文件中(选做功能)④具有删除、剪切、撤销等编辑功能(选做功能)。 二、要求的设计成果(课程设计说明书、设计实物、图纸等) 1、用Visual C++进行编码,实现应用程序的功能。注重编码质量,代码要有适当的注释; 2、撰写课程设计说明书一份,不少于2000字。课程设计说明书应包括封面、任务书、正文(设计的基本思路、设计的步骤及主要代码解释)、参考文献(资料)、附录等内容。 三、进程安排 6月29日:完成需求分析,确定程序功能,确立程序设计思想 6月30日~7月1日:进行详细设计,实现编码 7月2日:进行程序测试,完善编码;撰写设计说明书,准备答辩 7月3日:答辩 四、主要参考资料 [1] 王育坚.Visual C++面向对象编程教程.第2版.北京:清华大学出版社,2008 [2] 侯俊杰深入浅出MFC 1总体设计 1.1程序设计思想 根据绘图板的构造及用户的需求,首先要具有最基本的画图工具栏,其中具有曲线、直线、矩形、椭圆等基本图形按钮及文字按钮,当按下不同按钮时,需要完成不同图形的绘制,这就要添加WM_LBUTTONDOWN、WM_LBUTTONUP、WM_MOUSEMOVE的消息处理函数,并填写相应语句以实现图形及文本绘制。若想设置所绘图形的颜色、线宽及样式,需要设置不同的画笔和画刷,设置颜色可以通过调用颜色通用对话框返回颜色值,而字体的设置也可通过调用字体通用对话框返回字体值。其次,当改变窗口大小时,所绘内容将要消失,这时就需要对所绘图形及文字进行重绘。然后,要想实现所绘图形的保存,就需要对各个图形及字体进行序列化。最后,可以加一些附加设置,增加画笔、画刷、橡皮按钮,创建颜色工具栏,在状态栏显示鼠标坐标。 1.2程序流程图 打开程序,绘制图形文本,可以设置格式,如保存则执行序列化,关闭,重新打开时可将保存图形打开。 图1 程序流程图 1.3程序模块图 绘图应用程序包括四个主要模块:绘制图形文字模块、设置图形文字格式模块、重绘模块、图形文字序列化模块。 图2 程序模块图 1.4程序设计步骤 1.在工具栏添加按钮,添加绘制手划线、直线、矩形、椭圆、字体代码 2.在资源视图中,增加设置菜单及风格对话框,利用菜单命令分别调用颜色、风格、字体对话框,实现图形及文字的格式设置 3.新建手划线、直线、矩形、椭圆、文字的一般类,添加代码实现图形及文字的绘制 4.对手划线、直线、矩形、椭圆、文字进行序列化,以实现图形及文字的保存及打开 5.在资源视图中,绘制不同光标,为图形工具栏填加画笔、画刷、橡皮按钮,在代码中设置光标,并完成绘制功能 6.创建颜色工具栏,实现快捷设置颜色,并设置图形工具栏及颜色工具栏位置属性 7.添加状态栏,显示鼠标坐标 1.5程序功能介绍 1.绘制直线、手划线、矩形、椭圆、文字 2.具有画笔、画刷及橡皮功能 3.设置画笔颜色 4.设置各种图形的风格样式(包括线条风格及填充样式) 5.设置字体 6.重绘功能(改变窗口大小时重新绘制) 7.保存并打开所绘图形 2详细设计 2.1类型设置 在绘制图形及字体之前,要对绘制哪个图形设置标记,定义整型shape变量,为0时,表示绘制手划线,为1时表示绘制直线,2表示绘制矩形,3表示绘制椭圆,4表示绘制文字,5表示使用画笔,6表示使用画刷,7表示使用橡皮。 2.2图形的绘制 2.2.1绘制手划线 Shape为0时绘制手划线,首先为视图类CMyDrawView添加成员变量。线段起始坐标定义为CPoint类型,鼠标拖拽标记定义为bool型,绘制时采用标准的十字光标,定义一个HCURSOR型成员变量,在视图类CMyDrawView的头文件中增添必要的成员变量的定义。 在视

文档评论(0)

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

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

1亿VIP精品文档

相关文档