cdline.cpp

来自「Wince 下的画图软件的源代码,是一款不错的EVC图形编辑软件,可以直接作为P」· C++ 代码 · 共 60 行

CPP
60
字号
#include "stdafx.h"
#include"CDLine.h"

//#include "test1View.h"

 extern CPoint m_RopFirstPoint,m_RopSecondPoint;
IMPLEMENT_SERIAL(CDLine,CUnit,1)
void CDLine::DrawStatic(CDC*pDC)
{
}
CDLine::CDLine()
{ 
	CUnit::Initial();
}
void CDLine::Initial()
{
  m_FirstPoint=0;
  m_SecondPoint=0;
  m_PenColor=RGB(0,0,0);
  m_PenWidth=2;
  m_PenStyle=PS_SOLID;
}

void CDLine::DrawActive(CDC *pDC,CPoint point,char cPress)
{ 
	if(cPress==CMD_LBMOVE)
	{
		CPen m_pen;
		m_pen.CreatePen(m_PenStyle,m_PenWidth,m_PenColor);
		CPen* pen=(CPen*)pDC->SelectObject(&m_pen);
 
		BitBlt(pDC->m_hDC, 0, 0, iScreenWidth,iScreenHeight,hMemDC,0, 0	, SRCCOPY); 

		 COLORREF OldColor=pDC->SetBkColor(RGB(0,255,0));
		 int OldBkMode=pDC->SetBkMode(m_BkMode);
		 pDC->MoveTo(m_FirstPoint);
		 m_RopSecondPoint=point;
		 pDC->LineTo(point);
		 pDC->SelectObject(pen);
		 pDC->SetBkMode(m_BkMode);
		 pDC->SetBkColor(OldColor);
	}
	else
	{
		 HPEN m_pen,m_oldpen;
		 m_pen=CreatePen(m_PenStyle,m_PenWidth,m_PenColor);
		 m_oldpen=(HPEN)SelectObject(hMemDC,m_pen);
		 COLORREF OldColor=SetBkColor(hMemDC,RGB(0,255,0));
		 int OldBkMode=SetBkMode(hMemDC,m_BkMode);
		 MoveToEx(hMemDC,m_FirstPoint.x,m_FirstPoint.y,NULL);
		 LineTo(hMemDC,m_SecondPoint.x,m_SecondPoint.y);
		 SelectObject(hMemDC,m_oldpen);
		 SetBkMode(hMemDC,OldBkMode);
		 SetBkColor(hMemDC,OldColor);
		 BitBlt(pDC->m_hDC, 0, 0, iScreenWidth,iScreenHeight,hMemDC,0, 0, SRCCOPY); 
	}
}


⌨️ 快捷键说明

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