컴퓨터공부/MFC

Invalidate()

achivenKakao 2006. 11. 15. 17:29

Invalidate()함수는 화면의 영역을 무효화 영역으로 만들어 버립니다
(출처 : 'MFC에서 Invalidate()함수와   InvalidateRect() 에 대해 질문!!' - 네이버 지식iN)

강제로 WM_PAINT 메시지를 발생 시킨다.

 

 

Invalidate(false)

 : 다시 그려야 되는 영역을 지우지 않고 다시 그림.

   겹치게 그리기

 

Invalidate(true)

 : 화면을 지웠다가 새로 그리는 명령어

 

 

 

덤.

화면 업데이트

뷰 : Invalidate()함수 호출

도큐먼트 : UpdateAllViews(NULL)

 

WM_PAINT메시지를 발생시킨다.
 

 

 

9. InvalidateRect()

OnDraw() 함수를 호출하며, 리턴  값이 TRUE이면 배경화면까지 다시 출력하고 FALSE이면 나머지 부분만
출력한다.

10. Invalidate()

이 함수는 전체를  재표시해주고 인자가 FALSE이면 배경화면색을 제외한 나머지 부분을  재출력한다.
(OnDraw(), OnPaint())

    Invalidate(FALSE);// 화면의 배경색은  그대로 놔두고 재출력
    Invalidate() 또는 Invalidate(TRUE);
    // 화면을  배경색부터 재출력