为什么我的计数器不能捕捉到WM_TIMER消息?

loveyly 2004-03-24 10:44:19
点击一个按钮后执行如下的程序。没有任何的反应
void CCountDlg::OnButcount()
{
// TODO: Add your control notification handler code here
SetTimer(1,100,NULL);
}
void CCountDlg::OnTimer(UINT nIDEvent)
{
AfxMessageBox("1");
if(nIDEvent == 1){
AfxMessageBox("1");
}else{
AfxMessageBox("2");
}
CDialog::OnTimer(nIDEvent);
}
...全文
52 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fireant25 2004-03-26
  • 打赏
  • 举报
回复
首先,在OnTimer里面应该先KillTimer,否则会
一直超时。第二,你是在对话框里定义的Timer,如果
SetTimer完了就退出对话框,则对话框是无法接收到WM_TIMER消息的,
自然无法弹出AfxMessageBox了。

我试过了,在对话框不退出的情况下,你的代码完全没有问题。
johns78 2004-03-26
  • 打赏
  • 举报
回复
SetTimer(1,5000,NULL);
定时器太快了!!!
jsphuang 2004-03-24
  • 打赏
  • 举报
回复
是不是对话框在屏幕后面,你没看到哦!
greensofter 2004-03-24
  • 打赏
  • 举报
回复
没错啊?
ExplorerOfVc 2004-03-24
  • 打赏
  • 举报
回复
定义记时器id了嘛?

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧