您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于C++的简单Windows画图程序设计
学校代码10126学号00861003本科学年论文题目基于C++的简单Windows画图程序设计院系内蒙古大学鄂尔多斯学院专业名称自动化年级2008级学生姓名宋杰指导教师金涛2011年06月20日2学年论文指导教师评阅意见学生姓名宋杰专业班级自动化学号008610032008级(论文)题目基于C++的简单Windows画图程序设计指导教师金涛教师职称学年论文评语评定成绩:指导教师签名:年月日内蒙古大学鄂尔多斯学院2008级自动化专业学年论文I基于C++的简单Windows画图程序设计摘要本文简要介绍了基于C++的简单画图程序的实验设计过程。该设计以C++这一高级语言为基础,依托VC++开发环境中的MFC类设计而成,可实现最基本的绘图以及图形的保存与修改等功能。程序开发过程中采用了面向对象技术,易于扩充和维护。通过本次设计对面向对象技术及MFC有更深刻的了解,为今后图形系统的开发及可视化程序的设计提供了一个良好的实践基础。关键词:VC++,MFC,对象,画图基于C++的简单Windows画图程序设计00861003IISimpleWindowsDrawingProgramBasedOnC++ABSTRACTThisarticlebrieflydescribesthedesignprocessforasimpledrawingprogrambasedonC++.ThedesignbasedontheC++language,ahigh-levellanguage,relyingonMFCclassesintheVC++developmentenvironmentdesigned,canprovidethemostbasicfeaturessuchassavingandmodifyingofthedrawing,andgraphics.Theprogramusingobject-orientedtechnologyinthedevelopmentprocess,iseasytoexpandandmaintain.Throughthisdesigntoamoreprofoundunderstandingofobject-orientedtechnologyandMFCforfuturedevelopmentandVisualprogramdesignofgraphicsystemprovidesagoodbasisforpractice.KEYWORDS:VC++,MFC,object,drawing目录第一章引言.......................................错误!未定义书签。第二章设计背景....................................错误!未定义书签。2.1C++语言的发展背景...........................错误!未定义书签。2.1.1C++语言的由来..........................错误!未定义书签。2.1.2C++语言的主要特点......................错误!未定义书签。2.2MFC简介.....................................错误!未定义书签。2.3程序开发环境VisualStdio2008简介..........错误!未定义书签。2.3.1VisualC++库...........................错误!未定义书签。2.3.2VisualC++开发环境.....................错误!未定义书签。2.4图形设备接口GDI............................错误!未定义书签。2.4.1设备上下文.............................错误!未定义书签。2.4.2绘图对象类.............................错误!未定义书签。第三章程序设计.....................................错误!未定义书签。3.1设计预期目的................................错误!未定义书签。3.2设计思路....................................错误!未定义书签。3.3设计流程....................................错误!未定义书签。3.4设计中使用到的主要对象类简介................错误!未定义书签。3.4.1CPen类................................错误!未定义书签。3.4.2CBrush类..............................错误!未定义书签。3.4.3CRectangle类..........................错误!未定义书签。3.4.4CCircle类............................错误!未定义书签。3.4.5CMirrorShape类.......................错误!未定义书签。3.5程序设计过程简述...........................错误!未定义书签。3.5.1菜单的初始设计过程...................错误!未定义书签。3.5.2直线绘制功能设计过程简述............错误!未定义书签。第四章程序运行结果及说明.........................错误!未定义书签。第五章结果与讨论.................................错误!未定义书签。参考文献...........................................错误!未定义书签。致谢.............................................错误!未定义书签。附录一.............................................错误!未定义书签。内蒙古大学鄂尔多斯学院2008级自动化专业学年论文-1-第一章引言图形是Windows应用程序的重要组成部分,优美的图形界面是所有成功软件的共同特点。而绘图是Windows应用程序的重要功能之一。与面向过程的C语言不同,C++是一门面向对象的,它为程序开发人员提供了极大的便利,因此C++是当前最为流行的基于Windows的语言开发工具之一,其功能的强大,几乎无所不能,程序开发人员多以精通VC++为追求目标。本次设计利用VC++开发简单的画图程序,并进一步了解和应用面向对象程序设计的思想。第二章设计背景2.1C++语言的发展背景2.1.1C++语言的由来语言的发展是一个逐步递进的过程,C++是直接从C语言发展过来的。C语言的原型ALGOL60语言(也称为A语言)。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言,后来由美国国家标准化协会(AmericanNationalStandardsInstitute)制定了一个C语言标准,于一九八三年发表。通常称之为ANSIC。但是随着软件规模的增大,用C语言编写程序渐渐显得有些吃力了。为了解决软件危机,在20世纪80年代提出了面向对象的程序设计方法。以C语言为基础,C++应运而生。C++是由AT&TBell(贝尔)实验室的BjarneStroustrup博士及其同事于20世纪80年代初在C语言的基础上开发成功的。C++保留了C语言原有的所有优点,增加了面向对象的机制。C++是由C发展而来的,C++既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言。[1]2.1.2C++语言的主要特点1、增加了面向对象的机制,提高了开发大型程序的效率,同时减轻了程序开发人员的负担。2、数据类型丰富、齐全。标准C++供了整数、实数、字符、字符串等基本数据类型,还提供数组、指针、结构体等构造数据类型。C++还增加了类这一特殊数据类型的定义机制。3、语法限制不太严格,程序自由度大。但这既是优点也是缺点,该问题一直为各国程序开发者争论不休。而且,到目前为止没有一个完整的C++标准。4、编译系统生成的目标代码质量高,程序执行效率高。具有直接的硬件处理能力。5、程序可移植性通用性较强。C++中对于类的继承使得程序有着良好的可移植性。2.2MFC简介MFC,微软基础类(MicrosoftFoundationClasses),实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎,MFC是WinAPI与C++的结合。API,即微软提供的Windows下应用程序的编程语言接口,是一种软件编程的规范,但它不是一种程序开发语言,可以允许用户使用各种各样的第三方的编程语言来进行对Windows下应用程序的开发,使这些被开发出来的应用程序能在Windows下运行,例如VB,VC++,Java,Delhpi编程语言函数本质上全部源于API,因此用它们开发出来的应用程序都能工作在Windows的消息机制和绘图里,遵守基于C++的简单Windows画图程序设计00861003-2-Windows作为一个操作系统的内部实现。MFC是用来编写Windows应用程序的C++类集,该类集是按层次结构组织起来的,其中封装了大部分WindowsAPI函数和Windows控件,它所包含的功能涉及到整个Windows操作系统。MFC不仅为用户提供而且还提供了创建应用程序的组件。使用MFC类库和VisualC++提供的高度可视的应用程序开发工具,可使应用程序开发变得更简单,极大地缩短开发周期,提高代码的可靠性和可重用性[2]。MFC把所有的API函数封装到各种类与对象内,是面向对象与Windows编程的有机结合,真正的体现出了C++这一面向对象机制语言的风格。2.3程序开发环境VisualStdio2008简介MicrosoftVisualStudio2008是微软与2007年底发布的一款集成开发环境,是面向WindowsVista、Office2007、Web2.0的开发工具。VisualStudio集成开发环境(IDE)提供了一组工具,它集成了创建、编译、连接和测试Windows应用程序的功能。开发环境提供这一组工具,完全是为了开发和调试更加方便,VisualC++2008包括了VisualC++库及VisualC++开发环境。2.3.1VisualC++库VisualC++库包括行业标准活动模板库(ATL)、Microsoft基础类(MFC)库、及各种标准库(如标准C++)库。这些标准库由iostream库、标准模板库(STL)和C运行时库(CRT)组成。CRT包括已知引起安全问题的函数的安全增强替代项。STL/CLR库为托管代码开发人员引入了STL具有数据封装新功能的C++支持库,其设计意图在于简化面向CLR的程序,这些库减少了程序开发人员的工作量。2.3.2VisualC++开发环境该开发环境为项目管理与配置(包括更好的支持大型项目)、源代码编辑、源代码浏览和调试工具提供强力支持。该环境还支持IntelliSense,在编写代码时,该功能可以提供智能化切且定于上下文的建议。在VC++编译区,能够自动识别C++语言的关键字和Windows的关键字,有助于编程人员在编写程序时检查错误。其调试工具方法为断点调试、堆栈调试及跟踪调试[3]。2.4图形设备接口GDIWindows操作系统是一种与设备无关的操作系统,因此Windows应用程序在与外设打交道时无须考虑具体的硬件设置。Windows操作系统是通过相应的功能模块来实现设备无关性的,图形设备接口(Graphics块viceInterface,GDI)就是这样的一种功能模块。当Windows应用程序需要在图形输出设备(显示器、打印机、绘图仪)上输出图形时,通过图形设备接口调用图形输出设备的驱动程序来完成
本文标题:基于C++的简单Windows画图程序设计
链接地址:https://www.777doc.com/doc-4336415 .html