윈도우를 만들고 그림을 그리려면 반드시 DC의 핸들을 얻어야 한다.
- DC 핸들은 사용 후 반드시 해제해야 한다.
GetDC()GetDC() ReleaseDC()HDC hdc = GetDC(hwnd);
ReleaseDC(hwnd, hdc);
BeginPaint()BeginPaint()EndPaint()HDC hdc = BeginPaint(hwnd);
EndPaint(hwnd, hdc);
WM_PAINT 메시지를 해당 윈도우 프로시저에 보낸다.WM_PAINT는 메시지 큐에 두 번 들어오지 않고 이 좌표만이 새로 업데이트 된다.case WM_LBUTTONDOWN:
{
HBC hbc = GetDC(hwnd);
Rectangle(hdc, 10, 10, 10+100, 10+100);
ReleaseDC(hwnd, hdc);
return 0;
}
case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hwnd, &ps);
Rectangle(hdc, 120, 10, 120+100, 10+100);
EndPaint(hwnd, &ps);
return 0;
}
PAINTSTRUCT ps;
색상 정보를 받기 위한 구조체
HDC hdc = BeginPaint(hwnd, &ps);
BeginPaint()에 ps 변수의 주소를 제공한다.
↪ 다시 그려야 하는 영역에 대한 세부 정보를 받을 수 있다.

