1、新建Demo项目,打开对话框,添加两个按钮和一个静态文本,修改相应的Caption。程序功能:按下计时按钮开始计时,将时间显示在静态文本中,复位按钮可以对文本复位全零并关闭定时器。
2、修改ID:计时按钮ID为IDC_Timer,复位按钮ID为IDC_Reset。静态文本ID为IDC_TimeDis,并添加变量CStatic m_time。
3、双击计时按钮生成按钮按下事件处理函数,编辑函数,通过SetTimer函数启动定时器;参数1:nIDEvent,定时器ID;参数2:nElapse,定时器定时时间,单位为毫秒;参数3:回调函数,设为NULL即可。
4、双击复位按钮生成函数,编辑函数,通过KillTimer销毁定时器,只需输入一个参数(定时器ID),同时将文本复位为“00:00:00”。
5、类向导,添加WM_TIMER消息处理函数。
6、编辑定时器消息响应函数OnTimer,判断定时器的ID,如果只有一个定时器可以不用判断,但许多应用需要多个定时器,这时就适合switch语句进行判断。这里三个变量mm,ss,mss设为静态变量,否则每次进入都会重新赋值,不过如果将变量在头文件中定义成成员变量就不需要这样了。
7、本程序实现了定时器的启动、磨蓄贺痞响应和终止,但是复位后重新计时时,那三个变量还是在原有基础上计数,相当于是暂停后重新开始。如果需要邓咀挚垡重新开始计数,只要定义一个成员变量作为定时器销毁的标志,然后在定时器消息中判断标志位后对变量进行清零即可 ,清零后立马清除标志位。