반응형

BeginPaint 2

2.2 그리기 예 [Windows API]

2.2 그리기 예이번에는 간단한 그리기 예제를 통해 Windows API를 이용하여 어떤 절차를 거치는지 살펴고기로 합시다. [그림 2] 그리기 작업 수행 흐름 앞에서 소개했듯이 Windows API의 그리기 기본 흐름은 [그림 2]와 같습니다. Windows API를 처음 학습할 때 새로운 형식 명과 긴 함수 이름과 생소한 흐름과 절차들 때문에 어떻게 이해하면서 다음으로 넘어가야 하는지 걱정하는 것이 대부분입니다. 지금에 와서 Windows API를 학습하는 이유는 윈도우즈 프로그램이 어떠한 원리로 동작하는지 이해하기 위한 부분이 실제 프로그래밍에 사용하기 위한 것보다 많다고 볼 수 있습니다. 이미 MFC나 Windosw Form, WPF 등의 보다 강력하고 개발 비용이 적게 드는 기술들이 많기 때문에..

2.1 WM_PAINT 메시지 [Windows API]

2.1 WM_PAINT 메시지윈도우에 다른 윈도우에 의해 가려졌다가 보여지거나 최소화 후에 최대화를 하는 등의 작업을 수행하면 다시 그려주어야 하는 영역이 생깁니다. 윈도우즈 운영체제에서는 다른 창에 의해 가려지는 영역을 클리핑 영역으로 기억해 두었다가 해당 영역이 다시 보여지면 그 부분을 포함하는 최소한의 사각 영역을 무효화 영역이 발생한 것으로 처리합니다. 이 때 발생하는 윈도우 메시지가 WM_PAINT입니다.그런데 윈도우즈 프로그램에서 무효화 영역이 생긴다고 바로 WM_PAINT 메시지를 발생하여 처리하는 것은 아닙니다. 일반적으로 윈도우즈 프로그램에서 그리기 작업은 다른 작업들보다 처리 우선순위가 낮습니다. 따라서 응용 메시지 큐에 처리할 윈도우 메시지가 없고 무효화 영역이 있을 때 WM_PAIN..

반응형