BOOL
CXXXDlg::OnInitDialog()
函数中加入
{
SetTimer(1,1000,NULL)
//其中第一个参数是定时器的序号,第二个是间隔多长时间,1000是一秒,第三个是回调函数,如果为NULL,就是用默认的回调函数OnTimer
}
设置好以后,右键点CxxxxDilog类,然后加入消息响应,添加WM_TIMER,这样就生成了OnTimer函数,在OnTimer里你就可以进行你的 *** 作了,比如你说的在EDIT中显示当前系统时间,加入EDIT的ID为IDC_EDIT1,加入你通过ClassWizard绑定了CString变量
m_stredit1,那么在OnTimer中如下写:
void
CAVIPlayerDlg::OnTimer(UINT
nIDEvent)
{
//获取当前系统时间
CTime
tm
=
CTime::GetCurrentTime()
m_stredit1.Format("%04d-%02d-%02d
%02d:%02d:%02d",tm.GetYear(),tm.GetMonth(),tm.GetDay(),tm.GetHour(),tm.GetMinute(),tm.GetSecond())
UpdateData(FALSE)
CDialog::OnTimer(nIDEvent)
}
需要在消息映射宏定义中增加定时器映射:比如:
BEGIN_MESSAGE_MAP(CToolDlg, CDialog)
//{{AFX_MSG_MAP(CToolDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
一般,如果使用类向导的话,会自动加上的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)