대화상자에 비트맵 올리기

대화상자에 비트맵 올리기
아쉽게도 CDC::DrawBitmap이란 함수는 없습니다. 비트맵 자원을 출력하려면 비트맵을 읽어들이고,
출력 장치와 호환되는 메모리 장치 컨텍스트를 생성해야 합니다. 그런 다음 비트맵을 장치 컨텍스트로
선택하고, 장치 컨텍스트를 출력 장치로 전송합니다. 그러면 좌측 상단 구석에 비트맵을 올려놓을 수
있습니다.

void CSample::OnPaint(){
CPaintDC dc(this); // 출력에 필요한 장치 컨텍스트
CDC dcMem;
//비트맵 자원을 읽는다.
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP)
//출력 장치와 호환되는 메모리 장치 컨텍스트를 생성한다.
dcMem.CreateCompatibleDC(&dc)
//비트맵을 메모리 장치 컨텍스트로 선택한다.
CBitmap* pOldBitmap = dcMem.SelectObject(&stBitmap)
//비트맵의 크기를 구한다.
BITMAP stBitmap;
bitmap.GetObject(sizeof(BITMAP), &stBitmap);
//출력 장치에 비트맵을 그린다.
dc.BitBlt(0, 0, stBitmap.bwWidth stBitmap.bmHeight, &dcMem, 0, 0, SRCCOPY);
//메모리 장치 컨텍스트부터 컨텍스트로부터 비트맵을 꺼낸다.
}

zemna

Programmer/Web/Mobile/Desktop

You may also like...

Leave a Reply