MFC 프로그래밍을 하다 보면 View클래스에 OnDraw() 함수 같은 경우 메모리 DC를 사용하기 위해 번거롭게 코드를 추가 시키는 경우가 있다.

물론 DC의 개념상 꼭 필요한 작업들이지만 단순히 메모리 DC를 통해 화면에 처리를 해야 할 경우 위에 첨부된 MemDC.h 파일을 활용하자.

프로젝트 내에 MemDC.h 파일을 포함시키고 View 클래스에 헤더파일을 include 한 후 사용하면 된다.


// 초기화
CMemDC* pMemDC = NULL;


// 메모리 DC를 pDC로 초기화
pMemDC = new CMemDC(pDC);



// 실제 사용 예
pMemDC->FillSolidRect(m_rcClient, RGB(255, 255, 255));

if (viewFlag) {
     if (!m_pImage) return;

     nWidth = sizeView.cx;
     nHeight = sizeView.cy;

    
m_pImage->PutImage(pMemDC->GetSafeHdc(), nX, nY, nWidth, nHeight);
     ... ....
 }



// 메모리 반환을 위해 delete 해 준다.
delete pMemDC;



Reference : http://www.koders.com

신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Proneer

댓글을 달아 주세요


티스토리 툴바