Invalidate() 와 InvalidateRect()

Invalidate 동사. 무효화하다. 틀렸음을 입증하다

* WM_PAINT 메시지: OnDraw()함수를 호출하여 화면을 그리는 역할

* WM_PAINT 메시지 발생 함수
1) Invalidate(): 프로그램의 모든 화면을 다시 그려줌
- 함수 원형: void Invalidate(BOOL bErase = TRUE) ;
- Invalidate(TRUE): 윈도우 background를 전부 지우고 다시 그린다
- Invalidate(FALSE) : 윈도우 background는 그대로 두고 바뀐 부분만 그린다

2) InvalidateRect(): 무효화 부분만 다시 그려줌
- 함수 원형: BOOL InvalidateRect(HWND hWnd, CONST RECT *lpRect, BOOL bErase);
- 첫번째 인자 hWnd: 무효화 윈도우, 다시 그릴 윈도우 핸들
- 두번째 인자 lpRect: 무효화할 영역(NULL인 경우 윈도우 전체 무효화)
- 세번째 인자 bErase: 배경을 다시 그릴지 여부
- InvalidateRect(TRUE): 윈도우 background를 전부 지우고 다시 그린다
- InvalidateRect(FALSE) : 윈도우 background는 그대로 두고 바뀐 부분만 그린다

개념 참고)
https://paynter1127.blogspot.com/2019/08/hdc-beginpaintendpaint-wmpaint.html

댓글