API에 보면 자체적으로 WM_PAINT msg를 발생시키는 함수들이 존재한다
SetWindowPos(), MoveWinodw(), UpdateWindow() 등..
그런데 WinProc CallBack 함수에서 WM_PAINT msg에 대한 처리를
하지 않으면 어떻게 될까?
특이하게도 무한 루프에 빠져 버린다.
아무 처리도 하지 않는 함수를 call 해봤다.
역시나 무한 루프에 빠져 버렸다.
BeginPaint() / EndPaint() 를 넣어주니까 이상 없이 넘어가 버렸다
(물론 화면에 아무것도 그리는 것은 없지만..)
특이한 증상이다..
한가지 더..
화면을 그리기 위해서 과연 WM_PAINT를 발생 시켜야만 하는지..
WM_PAINT에서 처리하는 루틴을 함수로 만들어
이 함수를 각 msg 처리 루틴에서 Invalidate..()류의 함수 호출 없이
실행시키면 화면이 그려지지 않는다..
왜 그럴까????
[달린 덧글]
SetWindowPos(), MoveWinodw(), UpdateWindow() 등..
그런데 WinProc CallBack 함수에서 WM_PAINT msg에 대한 처리를
하지 않으면 어떻게 될까?
특이하게도 무한 루프에 빠져 버린다.
아무 처리도 하지 않는 함수를 call 해봤다.
역시나 무한 루프에 빠져 버렸다.
BeginPaint() / EndPaint() 를 넣어주니까 이상 없이 넘어가 버렸다
(물론 화면에 아무것도 그리는 것은 없지만..)
특이한 증상이다..
한가지 더..
화면을 그리기 위해서 과연 WM_PAINT를 발생 시켜야만 하는지..
WM_PAINT에서 처리하는 루틴을 함수로 만들어
이 함수를 각 msg 처리 루틴에서 Invalidate..()류의 함수 호출 없이
실행시키면 화면이 그려지지 않는다..
왜 그럴까????
[달린 덧글]
'프로그래밍 > 라이브러리' 카테고리의 다른 글
[Win32 API] WM_PAINT msg 처리 루틴에서 좌표 구하기 (0) | 2008.02.06 |
---|---|
[Win32 API] WCS 과 MBS간의 변환 (0) | 2008.02.06 |
[Win32 API] WM_PAINT msg를 사용하지 않고.. (0) | 2008.02.06 |
[Win32 API] 다이얼로그에 관하여... (0) | 2008.02.06 |
[MFC] 다이얼로그에서 키 입력 처리 (0) | 2008.02.06 |
호출하라고 되어있네..
Invalidate..() 류의 함수가 단순히 WM_PAINT msg 발생 이외에 무언가
다른 작업을 수행하는듯...
이거 프로그램이 다식 복잡해지겠네...