| Àμö |
wParam : ŸÀ̸ÓÀÇ ID°¡ Àü´ÞµÈ´Ù. ÀÌ ID´Â SetTimerÀÇ µÎ¹øÂ° Àμö·Î ÁöÁ¤ÇÑ °ªÀÌ´Ù. lParam : Äݹé ÇÔ¼ö°¡ ÀÖÀ» °æ¿ì Äݹé ÇÔ¼öÀÇ ¹øÁö°¡ Àü´ÞµÈ´Ù. |
| ¼³¸í |
SetTimer ÇÔ¼ö·Î ŸÀ̸Ӹ¦ ¼³Ä¡ÇßÀ» °æ¿ì ÁöÁ¤ÇÑ ½Ã°£ °£°ÝÀ¸·Î ÀÌ ¸Þ½ÃÁö°¡ ¹Ýº¹ÀûÀ¸·Î Å¥¿¡ ºÙ¿©Áø´Ù. ÁÖ±âÀûÀ¸·Î ¾î¶² ÀÛ¾÷À» ¹Ýº¹ÇØ¾ß ÇÑ´Ù¸é ŸÀ̸Ӹ¦ ¼³Ä¡Çϰí ÀÌ ¸Þ½ÃÁö¿¡¼ ÀÛ¾÷À» ó¸®Çϵµ·Ï ÇÑ´Ù. µÎ °³ ÀÌ»óÀÇ Å¸À̸Ӱ¡ ¼³Ä¡µÇ¾î ÀÖÀ» °æ¿ì °¢°¢ÀÇ Å¸À̸Ӵ Á¤ÇØÁø ½Ã°£ °£°ÝÀ¸·Î ÀÌ ¸Þ½ÃÁö¸¦ Å¥¿¡ ºÙÀ̸ç WM_TIMER¿¡¼´Â wParamÀ¸·Î ¾î¶² ŸÀ̸ӿ¡ ÀÇÇØ ÀÌ ¸Þ½ÃÁö°¡ ¹ß»ýÇß´ÂÁö Á¶»çÇÑ´Ù. ŸÀÌ¸Ó Äݹé ÇÔ¼ö¸¦ ÁöÁ¤ÇßÀ» °æ¿ì´Â ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÒ Çʿ䰡 ¾øÀ¸¸ç ½Ã½ºÅÛÀÌ Äݹé ÇÔ¼ö¸¦ ÁÖ±âÀûÀ¸·Î È£ÃâÇØ ÁØ´Ù. ÀÌ ¸Þ½ÃÁö´Â ´Ù¸¥ ¸Þ½ÃÁöµé¿¡ ºñÇØ ¿ì¼±¼øÀ§°¡ ³·°Ô ¼³Á¤µÇ¾î Àֱ⠶§¹®¿¡ ¸ÕÀú ó¸®ÇØ¾ß ÇÒ ¸Þ½ÃÁö°¡ ÀÖÀ» °æ¿ì °ð¹Ù·Î À©µµ¿ì ÇÁ·Î½ÃÀú·Î º¸³»ÁöÁö ¾ÊÀ» ¼ö ÀÖ´Ù. µû¶ó¼ Á¤È®ÇÑ ½Ã°£¿¡ ÀÌ ¸Þ½ÃÁö°¡ Àü´ÞµÇÁö ¾Ê´Â °æ¿ìµµ ÀÖÀ¸¹Ç·Î Á¤È®µµ¸¦ ¿äÇÏ´Â ÀÛ¾÷¿¡´Â ÀÌ ¸Þ½ÃÁö¸¦ »ç¿ëÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ´Ù. |
| ¸®ÅÏ |
ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é 0À» ¸®ÅÏÇØ¾ß ÇÑ´Ù. |
| ¿¹Á¦ |
´ÙÀ½ ¿¹Á¦´Â WM_TIMER¸¦ ÀÌ¿ëÇØ¼ °£´ÜÇÑ ½Ã°è¸¦ ¸¸µé¾î º» °ÍÀÌ´Ù.
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
static HANDLE hTimer;
SYSTEMTIME st;
static char sTime[128];
switch(iMessage) {
case WM_CREATE:
hTimer=(HANDLE)SetTimer(hWnd,1,1000,NULL);
SendMessage(hWnd, WM_TIMER, 1, 0);
return 0;
case WM_TIMER:
GetLocalTime(&st);
wsprintf(sTime,"Áö±Ý ½Ã°£Àº %d½Ã %dºÐ %dÃÊÀÔ´Ï´Ù",
st.wHour,st.wMinute,st.wSecond);
InvalidateRect(hWnd,NULL,TRUE);
return 0;
case WM_PAINT:
hdc=BeginPaint(hWnd,&ps);
TextOut(hdc,10,10,sTime,strlen(sTime));
EndPaint(hWnd,&ps);
return 0;
case WM_DESTROY:
KillTimer(hWnd,1);
PostQuitMessage(0);
return 0;
}
return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}
¸ÞÀÎ À©µµ¿ì°¡ »ý¼ºµÉ ¶§ 1ÃÊ °£°ÝÀ¸·Î ŸÀ̸Ӹ¦ ¼³Ä¡ÇßÀ¸¸ç WM_TIMER¿¡¼´Â 1ÃÊ °£°ÝÀ¸·Î ½Ã°£À» °»½ÅÇÑ´Ù.
|
| Ç÷§Æû |
95ÀÌ»ó |
| ÂüÁ¶ |
|
|
written by http://www.winapi.co.kr
|