Àμö |
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
|