欢迎来到天天文库
浏览记录
ID:40571613
大小:72.50 KB
页数:27页
时间:2019-08-04
《Visual C++编程欣赏》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VisualC++编程欣赏一、VisualC++的特点二、基于VisualC++的软件项目设计2.1软件开发过程2.1.1项目计划阶段2.1.2需求分析阶段2.1.3软件开发阶段2.1.4测试阶段2.2系统设计的步骤2.3软件开发工具的选择2.4测试与改错2.4.1对测试的理解2.4.2测试方式2.4.3测试的主要内容与常用方法2.4.4改错2.5VisualC++编程规范的制定2.5.1基本要求2.5.2可读性要求2.5.3结构化要求2.5.4正确性与容错性要求2.5.5编程规范示例2.6软件文档三、MyDr
2、aw绘图软件3.1MyDraw绘图软件的介绍3.1.1MyDraw绘图软件的特色1.绘图元素对象化2.图形对象的动态修改3.存取操作3.1.2MyDraw绘图软件的功能功能1:绘图功能功能2:选择功能功能3:修改对象属性功能4:文件存取功能3.1.3MyDraw软件的客户定位1.需要绘制工程现场图的单位2.图形程序编程爱好者3.2系统设计与选型3.2.1软件工具的选型3.2.2MyDraw绘图软件1.0版模块分工设计项目名称:MyDraw文件名:MyDraw.dsw绘图元素类弧线类:CArc椭圆类:CEllip
3、se矩形类:CRectangle文本类:CText直线类:CLine绘图元素属性对话框类椭圆、矩形属性对话框类名称:CEllipseProperties文本属性对话框类名称:CTextProperties直线、弧线属性对话框类名称:CLineProperties自动生成的类文档类名称:CMyDrawDocAbout对话框类名称:CAboutDlg主框架类名称:CMyFrame应用程序类名称:CMyDrawApp视图类名称:CMyDrawView3.3MyDraw绘图软件1.0版功能模块的创建3.3.1CLine
4、类记录直线信息Cline类主要有两大功能:定义直线对象的属性和实现直线对象的序列化(完成直线对象与文件之间的存取操作)。Cline类的头文件Line.h的内容如下://Line.h:interfacefortheCLineclass.////////////////////////////////////////////////////////////////////////#if_MSC_VER>1000#pragmaonce#endif//_MSC_VER>1000classCLine:publicCObj
5、ect{//DECLARE_DYNAMIC(CLine)DECLARE_SERIAL(CLine)public:boolbIsSelected;//指示直线是否处于选中状态intstartX;intstartY;intendX;intendY;LOGPENLinePen;//绘制直线采用的画笔CLine();virtual~CLine();voidSerialize(CArchive&ar);//Serialize函数用于完成具体的序列化操作。};在Cline类的实现文件Line.cpp中包含Cline类的构造
6、函数以及序列化的代码,内容如下://Line.cpp:implementationoftheCLineclass.////////////////////////////////////////////////////////////////////////#include"stdafx.h"#include"MyDraw.h"#include"Line.h"#ifdef_DEBUG#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#definenewDEBUG_NEW
7、#endif////////////////////////////////////////////////////////////////////////Construction/Destruction////////////////////////////////////////////////////////////////////////IMPLEMENT_DYNAMIC(CLine,CObject)IMPLEMENT_SERIAL(CLine,CObject,1)CLine::CLine(){//设置
8、各属性默认值bIsSelected=false;startX=0;startY=0;endX=100;endY=100;LinePen.lopnWidth.x=3;LinePen.lopnColor=RGB(0,0,0);LinePen.lopnStyle=PS_SOLID;}CLine::~CLine(){}//Serialize函数用于完成具体的序列化操作voidCLine::Se
此文档下载收益归作者所有