¿øÇü | HDC BeginPaint(HWND hwnd, LPPAINTSTRUCT lpPaint); |
MFC ¿øÇü | CDC* CWnd::BeginPaint( LPPAINTSTRUCT lpPaint ); |
Àμö |
¢ºhwnd:±×¸®±â¸¦ ÇÒ À©µµ¿ì ÇÚµé. WndProcÀÇ Ã¹¹ø° Àμö·Î Àü´ÞµÈ hWndÇÚµéÀ» ³Ñ°ÜÁÖ¸é µÈ´Ù. ¢ºlpPaint:±×¸®±â Á¤º¸¸¦ ¸®ÅϹޱâ À§ÇÑ ±¸Á¶Ã¼ÀÌ¸ç ´ÙÀ½°ú °°ÀÌ ¼±¾ðµÇ¾î ÀÖ´Ù. BeginPaint´Â Á¶»çµÈ Á¤º¸¸¦ ÀÌ ±¸Á¶Ã¼·Î ¸®ÅÏÇØ ÁÖ¸ç ÇÁ·Î±×·¥Àº È¿À²ÀûÀÎ ±×¸®±â¸¦ À§ÇØ ÀÌ ±¸Á¶Ã¼ÀÇ ¸â¹ö¸¦ ÂüÁ¶ÇÑ´Ù. typedef struct tagPAINTSTRUCT { HDC hdc; BOOL fErase; RECT rcPaint; BOOL fRestore; BOOL fIncUpdate; BYTE rgbReserved[32]; } PAINTSTRUCT, *PPAINTSTRUCT; hdc´Â ±×¸®±â¿¡ »ç¿ëµÉ DC ÇÚµéÀ̸ç fErase´Â ¹è°æÀÌ Áö¿öÁ®¾ß ÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇÑ´Ù. À©µµ¿ì Ŭ·¡½º¿¡ ¹è°æ ºê·¯½Ã°¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é fErase°¡ TRUE°¡ µÇ¸ç À̶§´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ Á÷Á¢ ¹è°æÀ» Áö¿ö¾ß ÇÑ´Ù. rcPaint´Â ¹«È¿ ¿µ¿ªÀÇ ÁÂÇ¥À̸ç ÃÖ´ëÇÑ ±×¸®±â¸¦ ºü¸£°Ô Çϱâ À§ÇØ ÀÌ ¿µ¿ª¸¸ ±×¸®¸é µÈ´Ù. ³ª¸ÓÁö ¼¼ ¸â¹ö´Â ½Ã½ºÅÛÀÌ ³»ºÎÀûÀÎ ¿ëµµ·Î »ç¿ëÇÑ´Ù. |
¸®ÅÏ | DCÇÚµéÀ» ¸®ÅÏÇØ Áִµ¥ ÀÌ °ªÀº PAINTSTRUCT ±¸Á¶Ã¼ÀÇ hdc ¸â¹ö¿Í µ¿ÀÏÇÑ °ªÀÌ´Ù. ¿¡·¯ ¹ß»ý½Ã NULLÀ» ¸®ÅÏÇÑ´Ù. |
¼³¸í |
À©µµ¿ìÁî ȯ°æ¿¡¼ ȸéÀ̳ª ÇÁ¸°ÅÍ·Î Ãâ·ÂÀ» ÇÏ·Á¸é DC¸¦ ¸ÕÀú ±¸ÇØ¾ß ÇÑ´Ù. DC¸¦ ±¸ÇÏ´Â ÀϹÝÀûÀÎ ¹æ¹ýÀº µÎ °¡Áö°¡ Àִµ¥ GetDC¿Í ReleaseDC¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ ÀÖ°í BeginPaint¿Í EndPaint¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù. BeginPaint¿Í EndPaint´Â ¦À» ÀÌ·ç¾î »ç¿ëµÇ¸ç ¹Ýµå½Ã WM_PAINT ¸Þ½ÃÁö ³»ºÎ¿¡¼¸¸ »ç¿ëÇØ¾ß ÇÑ´Ù. WM_PAINT ÇÔ¼ö´Â ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºµÈ´Ù. PAINTSTRUCT ps; HDC hdc; case WM_PAINT: hdc=BeginPaint(hWnd,&ps); °¢Á¾ Ãâ·Â¹®¿¡¼ hdc¸¦ »ç¿ëÇÑ´Ù. EndPaint(hWnd,&ps); PAINTSTRUCT ±¸Á¶Ã¼ ps¿Í HDCÇü º¯¼ö hdc¸¦ ¼±¾ðÇÑ ÈÄ BeginPaint¸¦ È£ÃâÇÏ¿© DCÇÚµéÀ» Á¶»çÇÏ°í ÀÌ ÇÚµé·Î ±×¸®±â¸¦ ÇÑ´Ù. ±×¸®°í EndPaint ÇÔ¼ö·Î ±×¸®±â¸¦ Á¾·áÇÑ´Ù. BeginPaint ÇÔ¼ö´Â ´ÙÀ½°ú °°Àº Áß¿äÇÑ ÀÏÀ» ÇÑ´Ù. 1.±×¸®±â¸¦ À§ÇØ DC ÇÚµéÀ» ±¸ÇÑ´Ù. ÀÌ ÇÚµéÀº PAINTSTRUCT ±¸Á¶Ã¼ÀÇ hdc¸â¹ö¿¡µµ ´ëÀԵǸç BeginPaint
ÇÔ¼öÀÇ ¸®ÅÏ°ªÀ¸·Î µ¹·ÁÁö±âµµ ÇÑ´Ù. BeginPaint°¡ ÀÌ·± Áß¿äÇÑ ÀÏÀ» Çϱ⠶§¹®¿¡ WM_PAINT ¸Þ½ÃÁö¿¡¼´Â ¹Ýµå½Ã GetDC°¡ ¾Æ´Ñ BeginPaint·Î DCÇÚµéÀ» Á¶»çÇØ¾ß ÇÑ´Ù. GetDC´Â Ŭ¸®ÇÎ ¿µ¿ª °è»êÀ̳ª ¹«È¿ ¿µ¿ª À¯È¿È¸¦ ÇØ ÁÖÁö ¾ÊÀ¸¹Ç·Î WM_PAINT¿¡¼´Â »ç¿ëÇÒ ¼ö ¾ø´Ù. ´ÙÀ½ ¿¹Á¦´Â WM_PAINT¿¡¼ Ÿ¿ø Çϳª, ÅؽºÆ® Çϳª¸¦ Ãâ·ÂÇÑ´Ù. long FAR PASCAL WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; switch(iMessage) { case WM_DESTROY: PostQuitMessage(0); return 0; case WM_PAINT: hdc=BeginPaint(hWnd,&ps); Ellipse(hdc,10,10,200,90); TextOut(hdc,100,100,"Beautiful Korea",15); EndPaint(hWnd,&ps); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } WM_PAINT·Î DC ÇÚµéÀ» ¹ß±Þ¹Þ¾Æ hdcº¯¼ö¿¡ ´ëÀÔÇÏ¿´À¸¸ç ÀÌ ÇÚµéÀº Ellipse, TextOut ÇÔ¼öÀÇ Ã¹¹ø° Àμö·Î »ç¿ëµÈ´Ù. |
Âü°íÇÔ¼ö | EndPaint, InvalidateRect, GetDC |
Ç÷¿Æû | 95ÀÌ»ó |
ÂüÁ¶ |
DCÀÇ Á¤ÀÇ¿¡ ´ëÇؼ´Â 3ÀåÀ» ÂüÁ¶ÇÑ´Ù. ±×¸®±â¿Í PAINTSTRUCT¿¡ ´ëÇؼ´Â 12ÀåÀ» ÂüÁ¶ÇÑ´Ù. |
written by http://www.winapi.co.kr
|