定时器

本文介绍了对话框类定时器的使用步骤。首先在头文件声明定时器消息编号,其应在WM_USER之后;接着通过类向导在消息里找到WM_TIMER添加处理程序;然后启动定时器,如设置2500毫秒;最后不用时要销毁定时器,避免不停调用OnTimer函数。各对话框可建自己的定时器,编号重复也无妨。

步骤:
一、头文件里声明定时器消息编号

#define WM_TIMER1			WM_USER+1
#define WM_TIMER3			WM_USER+3

WM_USER之前时系统使用的消息编号。

二、类向导Class Wizard,消息里边找到WM_TIMER,添加处理程序。

void CMyDlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	switch(nIDEvent)
	{
	case WM_TIMER1:
		{
			KillTimer(WM_TIMER1);
			…………//用户代码			
		}
		break;	
	case WM_TIMER3:
		{
			KillTimer(WM_TIMER3);
			…………//用户代码	
		}
		break;
	
	default:
		break;
	}

	CDialog::OnTimer(nIDEvent);
}

三、启动定时器

SetTimer(WM_TIMER3,2500,NULL);

2500毫秒=2.5秒。

四、销毁定时器

KillTimer(WM_TIMER3);

定时器不用时要记得销毁,否则就会不停发送定时器消息,不停地调用OnTimer函数。

以上用法都是对话框类的成员函数,不需要窗口句柄。各个对话框可以建立自己的定时器,并且定时器编号重复也没有关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值