现在的位置: 首页 > 综合 > 正文

MFC之SetTimer的使用

2014年09月05日 ⁄ 综合 ⁄ 共 705字 ⁄ 字号 评论关闭

首先在这里说一下,我使用的环境是VS2005。先说一下步骤,然后贴出代码。

步骤1:建立基于Dialog的MFC工程;

步骤2:在对话框上添加两个静态框,分别为“1秒中刷新一次”和“2秒刷新一次” 。两个编辑框,分别为“IDC_EDIT1”和"IDC_EDIT2",默认情况下就是这样的。然后在对应的对话框类中添加两个成员变量:

m_nData1 和 m_nData2

然后把编辑框的ReadOnly都改为TRUE 。

步骤3:点击OK按钮,在其中添加代码,如下:

void CMFCTimerDlg::OnBnClickedOk()
{
	// TODO: Add your control notification handler code here
	SetTimer(1, 2000, NULL) ;
	SetTimer(2, 1000, NULL) ;
	//OnOK();
}

步骤4:对话框类添加WM_TIME消息。代码如下:

void CMFCTimerDlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO: Add your message handler code here and/or call default
	switch(nIDEvent)
	{	
	case 1:
		if (5 == m_nData1)
		{
			KillTimer(1) ;
			break ;
		}
		SetDlgItemInt(IDC_EDIT1, ++m_nData1) ;
	case 2:
		if (10 == m_nData2)
		{
			KillTimer(2) ;
			break ;
		}
		SetDlgItemInt(IDC_EDIT2, ++m_nData2) ;
	default:
		break ;
	}
	CDialog::OnTimer(nIDEvent);
}

运行结果如下:

抱歉!评论已关闭.