MFC Timer定时器
生活随笔
收集整理的這篇文章主要介紹了
MFC Timer定时器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
知識點:定時器Timer創建定時器銷毀定時器代碼測試一、 創建定時器 UINT SetTimer(HWND hWnd, // 指定關聯定時器的窗口句柄,在MFC版將省略此參數
UINT nIDEvent, // 定時器ID
UINT uElapse, // 時間間隔 單位毫秒
TIMERPROC lpTimerFunc //定時器回調函數地址
);定時器回調函數格式VOID CALLBACK TimerProc(HWND hwnd, // handle of window for timer messages
UINT uMsg, // WM_TIMER message
UINT idEvent, // timer identifier
DWORD dwTime // current system time
);二、 銷毀定時器
BOOL KillTimer(HWND hWnd, // handle of window that installed timer
在MFC版將省略此參數UINT uIDEvent // timer identifier
);三、 代碼測試//實時顯示 當前時間 參考C語言053課
time_t t;
time(&t);
tm *TimeInfo=localtime(&t);
m_sTime.Format(L"%02d:%02d:%02d",TimeInfo->tm_hour,TimeInfo->tm_min,TimeInfo->tm_sec);//代碼
// CDialog_Timer 消息處理程序
void CALLBACK EXPORT TimerProc(HWND hWnd, // handle of CWnd that called SetTimerUINT nMsg, // WM_TIMERUINT nIDEvent, // timer identificationDWORD dwTime // system time
)
{if (nIDEvent==myTimerID) //
{//執行代碼TRACE("my TimerProc %d\n",dwTime);//顯示當前時間
time_t t;time(&t);tm *timeinfo=localtime(&t);TRACE("%02d:%02d:%02d",timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);}
}void CDialog_Timer::OnBnClickedButton1()
{// TODO: 在此添加控件通知處理程序代碼//SetTimer(1001,1000,NULL);//WM_TIMERSetTimer(1001,1000,TimerProc);//不產生WM_TIMER
}LRESULT CDialog_Timer::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{// TODO: 在此添加專用代碼和/或調用基類//if (message==WM_TIMER)//{// if (wParam==myTimerID) //// {// //執行代碼// TRACE("1111111111\n");// //顯示當前時間// time_t t;// time(&t);// tm *timeinfo=localtime(&t);// m_sTime.Format(L"%02d:%02d:%02d",timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);// UpdateData(false);// }//}return CDialog::WindowProc(message, wParam, lParam);
}void CDialog_Timer::OnBnClickedButton2()
{// TODO: 在此添加控件通知處理程序代碼KillTimer(myTimerID);//銷毀定時器
}void CDialog_Timer::OnTimer(UINT_PTR nIDEvent)
{// TODO: 在此添加消息處理程序代碼和/或調用默認值if (nIDEvent==myTimerID) //
{//執行代碼TRACE("1111111111\n");//顯示當前時間
time_t t;time(&t);tm *timeinfo=localtime(&t);m_sTime.Format(L"%02d:%02d:%02d",timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);UpdateData(false);}CDialog::OnTimer(nIDEvent);
}
?
轉載于:https://www.cnblogs.com/whzym111/p/6229874.html
總結
以上是生活随笔為你收集整理的MFC Timer定时器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样使用AutoLayOut为UIScr
- 下一篇: WIN7无法记住远程登录密码