À©µµ¿ì ÇÁ·Î±×·¡¹Ö ÀÚ·á

HomePage Backward Forward Post Reply List
Delete Modify
  Á¦¸ñ   [API] Timer 1998/07/14 (08:58)
À̸§ ±èÈ¿¿ø
¹øÈ£ 26
Á¶È¸ 424
º»¹® << Timer >>

SetTimer()ÇÔ¼ö¸¦ È£ÃâÇϸé ÇÁ·Î±×·¥¿¡ ŸÀ̸Ӹ¦ ÇÒ´çÇÒ ¼ö ÀÖ´Ù.
À̷лó 1millisecond - 4294967295 msec¹üÀ§ÀÇ °£°ÝÀ» ÁöÁ¤ÇÒ
¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î 1000 msecÀÇ °£°ÝÀ» ÇÁ·Î±×·¥¿¡ ¸ÅÃʸ¶´Ù
WM_TIMER¸Þ½ÃÁö¸¦ º¸³»µµ·Ï ÇÑ´Ù.
KillTimer()¸¦ È£ÃâÇÏ¿© ŸÀÌ¸Ó ¸Þ½ÃÁö¸¦ ¸ØÃß°Ô ÇÒ ¼ö ÀÖ´Ù.
WM_TIMER ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â µ¿¾È KillTimer()¸¦ È£ÃâÇϸé
ÀÏȸ¼º ŸÀ̸Ӹ¦ ¸¸µé ¼ö ÀÖ´Ù. KillTimer()ÇÔ¼ö´Â ¸Þ½ÃÁö
Å¥¿¡ ³²¾Æ ÀÖ´Â WM_TIMER¸Þ½ÃÁö¸¦ ¾ø¾Ø´Ù.

ŸÀ̸Ӵ 1ÃÊ¿¡ 18.2 Ŭ·Ï ÆÞ½º(54.925msec) ¼¼¹Ðµµ¸¦ °¡Áø´Ù.

ŸÀ̸Ӹ¦ »ç¿ëÇÏ´Â ¼¼ °¡Áö ¹æ¹ý.

<¹æ¹ý 1>
À©µµ¿ì ÇÁ·Î½ÃÀú¿¡ WM_TIMER ¸Þ½ÃÁö¸¦ º¸³»µµ·Ï ÇÏ´Â °Í.

SetTimer(hwnd,1,wMsecInterval,NULL);

2¹ø°´Â Timer ID (non-zero)

KillTimer(hwnd,1);

WM_TIMER¸Þ½ÃÁö¸¦ ¹ÞÀ» ¶§, wParamÀº Timer IDÀÌ°í,
lParamÀº 0ÀÌ´Ù.

<¹æ¹ý 2>
À©µµ¿ìÁî°¡ ŸÀÌ¸Ó ¸Þ½ÃÁö¸¦ ÇÁ·Î±×·¥ÀÇ ¶Ç´Ù¸¥ ÇÔ¼ö¿¡°Ô º¸³¿.
ŸÀÌ¸Ó ¸Þ½ÃÁö¸¦ ¹ÞÀ» ÇÔ¼ö´Â call-backÇÔ¼ö¶ó°í ¸í¸íµÈ´Ù.
»ç¿ëÀÚ´Â ÇÔ¼öÀÇ ÁÖ¼Ò¸¦ À©µµ¿ìÁî¿¡ ¾Ë¸®¸ç, À©µµ¿ì°¡ ³ªÁß¿¡
ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.
À©µµ¿ì ÇÁ·Î½ÃÀúó·³ CALLBACK À¸·Î Á¤ÀǵǾî¾ß ÇÑ´Ù.

VOID VALLBACK TimerProc(HWND, UINT, UINT iTimerID, DWORD dwTime)
{
// WM_TIMER ó¸®
}

HWND´Â SetTimer¸¦ È£ÃâÇÒ¶§ ÁöÁ¤µÇ´Â À©µµ¿ìÀÇ ÇÚµé
UINT iMsg´Â Ç×»ó WM_TIMER
iTimerID´Â Timer ID
dwTimeÀº ½Ã½ºÅÛ ½Ã°£ÀÌ´Ù.

SetTimer(hwnd,iTimerID,iMsecInterval,(TIMERPROC)TimerProc);

³×¹ø° Àλ簡 call-back ÇÔ¼öÀÇ ÁÖ¼ÒÀÌ´Ù.


<¹æ¹ý 3>
SetTimerÀÇ hwnd°¡ NULL·Î ¼³Á¤µÇ°í, µÎ¹ø° ÀÎÀÚ°¡ ¹«½ÃµÇ´Â °ÍÀ»
Á¦¿ÜÇÏ¸é µÎ¹ø° ¹æ¹ý°ú À¯»çÇÏ´Ù. ´ë½Å¿¡ ÀÌ ÇÔ¼ö´Â ŸÀÌ¸Ó ID¸¦
µÇµ¹¸°´Ù.

iTimerID=SetTImer(NULL,0,wMsecInterval,(TIMERPROC)TimerProc);

»ç¿ë °¡´ÉÇÑ Å¸À̸Ӱ¡ ¾øÀ» °æ¿ì NULLÀ» ¹ÝȯÇÑ´Ù.
KillTimerÀÇ Ã¹¹ø° ÀÎÀÚµµ NULLÀ̾î¾ß Çϸç, TimerID¸¦ SetTimer
¿¡¼­ ¹ÝȯµÈ °ªÀ̾î¾ß ÇÑ´Ù.
TimerProcÇÔ¼ö¿¡ Àü´ÞµÈ hwndÀÎÀÚ ¿ª½Ã NULLÀÌ µÈ´Ù.

HomePage Backward Forward Post Reply List
1998 by swindler