📄 memdc.cpp
字号:
// MemDC.cpp: implementation of the CMemDC class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "MemDC.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CMemDC::CMemDC()
{
m_hOldBmp = NULL;
}
void CMemDC::CreateMemDC(int nWidth,int nHeight)
{
if (m_hOldBmp != NULL)
{
HBITMAP hBmp;
hBmp = (HBITMAP)SelectObject(m_hDC, m_hOldBmp);
VERIFY(DeleteObject(hBmp));
DeleteDC(m_hDC);
m_hOldBmp = NULL;
m_hDC = NULL;
}
HDC hDC = ::GetDC(NULL);
m_hDC = CreateCompatibleDC(hDC);
HBITMAP hBmp = CreateCompatibleBitmap(hDC, nWidth, nHeight);
m_hOldBmp = (HBITMAP)SelectObject(m_hDC, hBmp);
::ReleaseDC(NULL, hDC);
}
CMemDC::CMemDC(int nWidth,int nHeight)
{
HDC hDC = ::GetDC(NULL);
m_hDC = CreateCompatibleDC(hDC);
HBITMAP hBmp = CreateCompatibleBitmap(hDC, nWidth, nHeight);
m_hOldBmp = (HBITMAP)SelectObject(m_hDC, hBmp);
::ReleaseDC(NULL, hDC);
}
CMemDC::~CMemDC()
{
if (m_hOldBmp != NULL)
{
HBITMAP hBmp;
hBmp = (HBITMAP)SelectObject(m_hDC, m_hOldBmp);
DeleteObject(hBmp);
DeleteDC(m_hDC);
m_hOldBmp = NULL;
m_hDC = NULL;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -