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

📄 memerydc.h

📁 无聊的时候编写的
💻 H
字号:
#pragma once


class	CMemeryDC :public CDC
{
public:
private:	
	CBitmap		m_bitmap;		// Offscreen bitmap
	CBitmap*	m_oldBitmap;	// bitmap originally found in CMemeryDC
	CDC*		m_pDC;			// Saves CDC passed in constructor
	CRect		m_rect;			// Rectangle of drawing area.
public:

	CMemeryDC(CDC* pDC, const CRect* pRect = NULL) : CDC()
	{
		ASSERT(pDC != NULL); 
		m_pDC		=	pDC;
		m_oldBitmap =	NULL;
		if (pRect == NULL) 
		{
			pDC->GetClipBox(&m_rect);
		}
		else
		{
			m_rect = *pRect;
		}
		CreateCompatibleDC(pDC);
		m_bitmap.CreateCompatibleBitmap(pDC, m_rect.Width(), m_rect.Height());
		m_oldBitmap = SelectObject(&m_bitmap);

	}


	~CMemeryDC()	
	{		
		m_pDC->BitBlt(	m_rect.left,
						m_rect.top, 
						m_rect.Width(), 
						m_rect.Height(),
						this, m_rect.left,
						m_rect.top, SRCCOPY);			
		SelectObject(m_oldBitmap);
		
	}

	CMemeryDC* operator->() 
	{
		return this;
	}	


	operator CMemeryDC*() 
	{
		return this;
	}
};

⌨️ 快捷键说明

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