MFC中實作定時執行與提醒功能(自編代碼)
具體實作代碼如下:添加一個計時器:SetTimer(1,1000,NULL);
下面僅列舉核心代碼,詳細步聚不作說明,效果如下所示:
void CShowTimer::OnTimer(UINT_PTR nIDEvent)
{
if (nIDEvent==1)
{
UpdateData(true);
CString hour;
CString minute;
CString second;
CString get_time_Hour;
CString get_time_Minute;
CString get_time_Second;
hour = m_time_edit2.Format("%H");
minute = m_time_edit2.Format("%M");
second = m_time_edit2.Format("%S");
CTime get_time=CTime::GetCurrentTime();
get_time_Hour=get_time.Format("%H");
get_time_Minute=get_time.Format("%M");
get_time_Second=get_time.Format("%S");
if (get_time_Hour==hour&&get_time_Minute==minute&&get_time_Second==second)
{
GetDlgItemText(IDC_EDIT_1,m_value_edit);
MessageBox(m_value_edit,"提示",64);
while (true)
{
GetDlgItemText(IDC_EDIT_3,m_value_edit3);
int m_edit3=atoi(m_value_edit3);
Sleep(m_edit3*1000*60);
MessageBox(m_value_edit,"提示",64);
}
}
else
return;
}
}
CDialog::OnTimer(nIDEvent);
}
其中上述,hour = m_time_edit2.Format("%H");
second = m_time_edit2.Format("%S"); 用來擷取時間控件中時間,分鐘與秒數,
get_time_Hour=get_time.Format("%H");
get_time_Second=get_time.Format("%S");,用來擷取目前系統運作的時間,分鐘與秒數。
另外,兩個設定按鈕,通過輕按兩下按鈕處理事件,添加如下代碼即可:UpdateData(true);