MFC课程设计实验报告(6)

2019-09-02 13:38

MFC—课程设计

int OrgY; int width; int high; int linewidth;

int R1,R2,G1,G2,B1,B2; };

class CSquare:public CShape { public:

CSquare();

CSquare(int x,int y,int w,int line,int r1,int g1,int b1,int r2,int

b2,int g2);

void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内 virtual void Serialize(CArchive& ar );//序列化正方形图元

private: };

class CRectangle:public CShape { public:

CRectangle();

CRectangle(int x,int y,int w,int h,int line,int r1,int g1,int b1,int DECLARE_SERIAL(CSquare)//声明类CSquare支持序列化

r2,int b2,int g2);

void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内

26

MFC—课程设计

virtual void Serialize(CArchive& ar );//序列化正方形图元

private: };

class CTriangle:public CShape { public:

CTriangle();

CTriangle(int x,int y,int w,int h,int line,int r1,int g1,int b1,int DECLARE_SERIAL(CRectangle)//声明类CRectangle支持序列化

r2,int b2,int g2);

void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内 virtual void Serialize(CArchive& ar );//序列化正方形图

private: };

class CCircle:public CShape { public:

CCircle();

CCircle(int x,int y,int w,int line,int r1,int g1,int b1,int r2,int DECLARE_SERIAL(CTriangle)//声明类CTriangle支持序列化

b2,int g2);

void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内 virtual void Serialize(CArchive& ar );//序列化正方形图

27

MFC—课程设计

private: };

class CEllipse:public CShape { public:

CEllipse();

CEllipse(int x,int y,int w,int h,int line,int r1,int g1,int b1,int DECLARE_SERIAL(CCircle)//声明类CCircle支持序列化

r2,int b2,int g2);

void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内 virtual void Serialize(CArchive& ar );//序列化正方形图

private: };

class CText:public CShape { public:

CText();

CText(int x,int y,int r1,int g1,int b1,int a); void Draw(CDC*pDC);//绘制

bool IsMatched(CPoint pnt);//重载点pnt是否落在图元内 virtual void Serialize(CArchive& ar );//序列化正方形图 DECLARE_SERIAL(CEllipse)//声明类CEllipse支持序列化

private:

int angle;

28

MFC—课程设计

};

DECLARE_SERIAL(CText)//声明类CText支持序列化

#endif

// !defined(AFX_SHAPE_H__9F3D8253_0729_4802_9938_EDAA421048A0__INCLUDED_)

2.Shape.cpp

// Shape.cpp: implementation of the CShape class. //

//////////////////////////////////////////////////////////////////////

#include \#include \#include \#include \#include \#include \#ifdef _DEBUG #undef THIS_FILE

static char THIS_FILE[]=__FILE__; #define new DEBUG_NEW #endif

//////////////////////////////////////////////////////////////////////

// Construction/Destruction

//////////////////////////////////////////////////////////////////////

29

MFC—课程设计

IMPLEMENT_SERIAL(CSquare, CObject, 1)//实现类CSquare的序列化,指定版本为1

IMPLEMENT_SERIAL(CCircle, CObject, 1) IMPLEMENT_SERIAL(CRectangle, CObject, 1) IMPLEMENT_SERIAL(CEllipse, CObject, 1) IMPLEMENT_SERIAL(CTriangle, CObject, 1) IMPLEMENT_SERIAL(CText, CObject, 1) CShape::CShape() { }

CShape::~CShape() { } //正方形

void CSquare::Serialize(CArchive &ar) { if (ar.IsStoring()) { ar << OrgX<< OrgY;//原点坐标 ar <

ar<< linewidth;//线宽

} else { ar >> OrgX >>OrgY;//原点坐标

ar >>width;

30


MFC课程设计实验报告(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高中数学实施分层教学的研究

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: