⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zcr14ellipse.cpp

📁 一个画笔的程序,可以进行直线,圆和方形等图形进行画图,并可以撤消上一步的动作
💻 CPP
字号:
// ZCR14Ellipse.cpp: implementation of the CZCR14Ellipse class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "ZCR14Paint.h"
#include "ZCR14Ellipse.h"

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

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

CZCR14Ellipse::CZCR14Ellipse()
{
    m_nPenWidth=1;
	m_clrPaint=RGB(0,0,0);
}

CZCR14Ellipse::~CZCR14Ellipse()
{

}

void CZCR14Ellipse::Draw(CDC *pDC)
{
	CPen pen(PS_SOLID,m_nPenWidth, m_clrPaint);
	CPen* pOldPen=pDC->SelectObject(&pen);
	
	//	pDC->SetROP2(R2_NOTXORPEN);
	switch(m_nType) 
	{
	case 0:
		{pDC->Ellipse(m_ptStart.x,m_ptStart.y,m_ptEnd.x,m_ptEnd.y);
		break;}
	case 1:
		{
			CBrush Brush;
		Brush.CreateSolidBrush(m_clrCanvase);
		CBrush*pOldBrush=pDC->SelectObject(&Brush);
		pDC->Ellipse(m_ptStart.x,m_ptStart.y,m_ptEnd.x,m_ptEnd.y);
		pDC->SelectObject(pOldBrush);
		break;
		}
	case 2:
		{
			pDC->SelectObject(pOldPen);
		CPen pen(PS_SOLID,1,m_clrCanvase);
		CPen* pOldPen=pDC->SelectObject(&pen);
		CBrush brush;
		brush.CreateSolidBrush(m_clrCanvase);
		CBrush* pOldBrush=pDC->SelectObject(&brush);
		pDC->Ellipse(m_ptStart.x,m_ptStart.y,m_ptEnd.x,m_ptEnd.y);
		pDC->SelectObject(pOldPen);
		pDC->SelectObject(pOldBrush);
		break;
		}
		//	default:
	}
	
	pDC->SelectObject(pOldPen);
}

void CZCR14Ellipse::SetTypeCanvas(int nType, COLORREF nCanvas)
{
	m_nType=nType;
	m_clrCanvase=nCanvas;
}

void CZCR14Ellipse::SetPenWidthColor(int nPenWidth, COLORREF clrPaint)
{
	m_nPenWidth=nPenWidth;
	m_clrPaint=clrPaint;
}

void CZCR14Ellipse::SetPoint(CPoint pStart, CPoint pEnd)
{
	m_ptStart=pStart;
	m_ptEnd=pEnd;
}

⌨️ 快捷键说明

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