georect.cpp

来自「软件参考Windows操作系统下的画图程序」· C++ 代码 · 共 59 行

CPP
59
字号
// GeoRect.cpp: implementation of the GeoRect class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Drawing.h"
#include "GeoRect.h"

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

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

GeoRect::GeoRect()
{

}

GeoRect::~GeoRect()
{

}

void GeoRect::Draw(CDC &dc)
{
	CPen pen(PS_SOLID, m_nWidth, m_color);
	CPen *oldpen = dc.SelectObject(&pen);
	if(m_nMode==0)//线框模式
	{
		CPoint pt1(m_pPoint1), pt2(m_pPoint2.x, m_pPoint1.y), pt3(m_pPoint2), pt4(m_pPoint1.x, m_pPoint2.y);
		GeoLine line;
		line.SetColor(m_color);
		line.SetMode(m_nMode);
		line.SetWidth(m_nWidth);
		line.SetTwoPoint(pt1, pt2);
		line.Draw(dc);
		line.SetTwoPoint(pt2, pt3);
		line.Draw(dc);
		line.SetTwoPoint(pt3, pt4);
		line.Draw(dc);
		line.SetTwoPoint(pt4, pt1);
		line.Draw(dc);
	}
	else//填充模式
	{
		CBrush bru(m_color);
		CBrush *oldbru = dc.SelectObject(&bru);	
		dc.Rectangle(m_pPoint1.x, m_pPoint1.y, m_pPoint2.x, m_pPoint2.y);
		dc.SelectObject(oldbru);
	}
	dc.SelectObject(oldpen);

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?