| Àμö |
wParam : ´ëÈ»óÀÚÀÇ DC ÇÚµé. ÀÌ Çڵ鰪À¸·Î Àü°æ»ö°ú ¹è°æ»öÀ» º¯°æÇÑ´Ù. lParam : ´ëÈ»óÀÚÀÇ ÇÚµé. |
| ¼³¸í |
½Ã½ºÅÛÀÌ ´ëÈ»óÀÚ¸¦ ±×¸®±â Àü¿¡ ÀÌ ¸Þ½ÃÁö¸¦ º¸³» ¹è°æ»ö»óÀ» Áú¹®ÇÑ´Ù. DefWindowProcÀº ½Ã½ºÅÛ¿¡ Á¤ÀÇµÈ ¹è°æ »ö»óÀ» ¸®ÅÏÇϵµ·Ï µÇ¾î ÀÖÀ¸³ª ÀÌ ¸Þ½ÃÁö¸¦ ´ëÈ»óÀÚ°¡ Á÷Á¢ ó¸®Çϸé wParamÀ¸·Î Àü´ÞµÇ´Â DC¿¡ ¹è°æ»ö°ú Àü°æ»öÀ» ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç ¹è°æ ºê·¯½Ã ÇÚµéÀ» ¸®ÅÏÇÔÀ¸·Î½á ´ëÈ»óÀÚÀÇ ¹è°æ»öÀ» º¯°æÇÒ ¼ö ÀÖ´Ù. ¹è°æ ºê·¯½Ã¸¦ º¯°æÇϰíÀÚ ÇÒ °æ¿ì WM_INITDIALOG ¸Þ½ÃÁö¿¡¼ ¹Ì¸® ºê·¯½Ã¸¦ ¸¸µé¾î ³õ°í ÀÌ ¸Þ½ÃÁö¿¡¼ ºê·¯½Ã ÇÚµéÀ» ¸®ÅÏÇØ ÁÖ¸é µÈ´Ù. ´ëÈ»óÀÚ´Â ÀÌ ¸Þ½ÃÁö¿¡¼ ¸®ÅÏÇÑ ºê·¯½Ã ÇÚµé·Î ¹è°æÀ» ä»öÇÏ´Ù. ÀÌ ºê·¯½Ã´Â ½Ã½ºÅÛÀÌ ÀÚµ¿À¸·Î ÆÄ±«ÇØ ÁÖÁö ¾ÊÀ¸¹Ç·Î ´õ ÀÌ»ó Çʿ䰡 ¾ø¾îÁ³À» ¶§(EndDialog È£Ãâ Á÷Àü)´ëÈ»óÀÚ°¡ ÆÄ±«ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ÀÌ ¸Þ½ÃÁö´Â °°Àº ½º·¹µå ³»¿¡¼¸¸ º¸³»Áø´Ù. |
| ¸®ÅÏ |
ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é ¹è°æ ºê·¯½ÃÀÇ ÇÚµéÀ» ¸®ÅÏÇØ ÁØ´Ù. ºê·¯½Ã Çڵ鰪Àº INT_PTR·Î ij½ºÆÃµÈ ÈÄ ¸®ÅϵǾî¾ß ÇÑ´Ù. ´ëÈ»óÀÚ ÇÁ·Î½ÃÀú°¡ FALSE¸¦ ¸®ÅÏÇÏ¸é µðÆúÆ® 󸮰¡ ¼öÇàµÈ´Ù. |
| ¿¹Á¦ |
´ÙÀ½ ¿¹Á¦´Â ´ëÈ»óÀÚÀÇ ¹è°æ »ö»óÀ» ³ë¶õ»öÀ¸·Î º¯°æÇÑ´Ù.
#include "resource.h"
BOOL CALLBACK AboutDlgProc(HWND hDlg,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
static HBRUSH hBrush;
switch(iMessage)
{
case WM_INITDIALOG:
hBrush=CreateSolidBrush(RGB(255,255,0));
return TRUE;
case WM_CTLCOLORDLG:
return (INT_PTR)hBrush;
case WM_COMMAND:
switch (wParam)
{
case IDOK:
case IDCANCEL:
DeleteObject(hBrush);
EndDialog(hDlg,0);
return TRUE;
}
break;
}
return FALSE;
}
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
TCHAR Mes[]="¸¶¿ì½º ¿ÞÂÊ ¹öưÀ» ´©¸£½Ê½Ã¿À";
switch(iMessage) {
case WM_LBUTTONDOWN:
DialogBox(g_hInst,MAKEINTRESOURCE(IDD_DIALOG1),hWnd,AboutDlgProc);
return 0;
case WM_PAINT:
hdc=BeginPaint(hWnd, &ps);
TextOut(hdc,10,10,Mes,lstrlen(Mes));
EndPaint(hWnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}
½Ã½ºÅÛÀº ´ëÈ»óÀÚ¸¦ ±×¸®±â Àü¿¡ Ç×»ó WM_CTLCOLORDLG ¸Þ½ÃÁö¸¦ ´ëÈ»óÀÚ·Î º¸³» ¹è°æ »ö»óÀ» ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁØ´Ù. ´ëÈ»óÀÚ°¡ ÀÌ ¸Þ½ÃÁö¿¡ ÀÀ´äÇÏÁö ¾ÊÀ¸¸é DefWindowProcÀÌ ÀûÀýÇÑ ½Ã½ºÅÛ »ö»óÀ» ´ë½Å ¼±ÅÃÇØ ÁØ´Ù. ¹è°æ ºê·¯½Ã¸¦ º¯°æÇÏ·Á¸é WM_INITDIALOG¿¡¼ ¹Ì¸® ¿øÇÏ´Â ºê·¯½Ã¸¦ »ý¼ºÇØ ³õ°í WM_CTLCOLORDLG ¸Þ½ÃÁö¸¦ ¹Þ¾ÒÀ» ¶§ ±× ÇÚµéÀ» ¸®ÅÏÇØ ÁØ´Ù. ÀÌ ºê·¯½Ã´Â EndDialog¿¡ ÀÇÇØ ´ëÈ»óÀÚ°¡ ÆÄ±«µÉ ¶§ °°ÀÌ ÇØÁ¦ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ½ÇÇàÁßÀÇ ¸ð½ÀÀº ´ÙÀ½°ú °°´Ù.
|
| Ç÷§Æû |
95ÀÌ»ó |
| ÂüÁ¶ |
|
|
written by http://www.winapi.co.kr
|