SetBkMode(hdc, TRANSPARENT); //
TextOut ......
이런식으로 먼저 하면 된다.
TRANSPARENT 대신에 OPAQUE 사용하면 (OPAQUE 가 디폴트)
SetBkColor 로 선택한 색상이 배경으로 나온다.
출처:http://soen.kr/lecture/win32api/reference/Function/SetBkMode.htm
SetBkMode(hdc, TRANSPARENT); //
TextOut ......
이런식으로 먼저 하면 된다.
TRANSPARENT 대신에 OPAQUE 사용하면 (OPAQUE 가 디폴트)
SetBkColor 로 선택한 색상이 배경으로 나온다.
출처:http://soen.kr/lecture/win32api/reference/Function/SetBkMode.htm
HCD hdc = BeginPaint(hWnd, &ps);
HDC backMemDC, MemDC;
static HBITMAP backBitmap = NULL;
HBITMAP hMyBitmap, hOldBitmap;
RECT crt;
GetClientRect(hWnd, &crt);
MemDC = CreateCompatibleDC(hdc);
hMyBitmap = CreateCompatibleBitmap(hdc, crt.right, crt.bottom);
hOldBitmap = (HBITMAP)SelectObject(MemDC, hMyBitmap);
FillRect(MemDC, &crt, (HBRUSH)GetStockObject(WHITE_BRUSH));
///// 화면 처리작업을 전부 MemDC 쪽으로 한다.
this->render(MemDC);
BitBlt(hdc, 0, 0, crt.right, crt.bottom, MemDC, 0, 0, SRCCOPY);
DeleteObject(SelectObject(MemDC, hOldBitmap));
DeleteDC(MemDC);
EndPaint(hWnd, &ps);
!!! 화면 지우는 작업을 못 해게 해준다. !!
case WM_ERASEBKGND:
return 0;
TextOut 사용시 배경색없애는 방법 (0) | 2015.05.19 |
---|