在定时器中调用方式对话框结束定时器
在定时器中调用模式对话框结束定时器?
我编了一个基于对话框的MFC EXE(VC6.0),在对话框中有个按钮,点击按钮,启动一个定时器,代码如下:
定时器所做工作代码如下:
很简单,就是弹出一个模式对话框。
我的本意是弹出sdlg模式对话框后,模块对话框就完全掌控了程序,主程序等待我在模式对话框中进行一些操作。可是,因为有定时器,每隔5秒就弹出一个模式对话框...........这不是我想要的。
我就想要弹出一个模式对话框后,主程序就等待我操作这个模式对话框,请问该如何修改代码呢?
难道要在弹出模式对话框的OnCreate中KillTimer(1)么?
------解决方案--------------------
//弹出模式对话框
KillTimer(1); // 加一句
CSecondDlg sdlg;
sdlg.DoModal();
------解决方案--------------------
"弹出模式对话框"前,先Kill这个定时器
------解决方案--------------------
“难道在定时器的OnTimer中可以杀死自己”
当然,当你需要“OneShot”功能时 常常这样
我编了一个基于对话框的MFC EXE(VC6.0),在对话框中有个按钮,点击按钮,启动一个定时器,代码如下:
SetTimer(1,5000,NULL);
定时器所做工作代码如下:
void CMyDlg::OnTimer(UINT nIDEvent)
{
//弹出模式对话框
CSecondDlg sdlg;
sdlg.DoModal();
CDialog::OnTimer(nIDEvent);
}
很简单,就是弹出一个模式对话框。
我的本意是弹出sdlg模式对话框后,模块对话框就完全掌控了程序,主程序等待我在模式对话框中进行一些操作。可是,因为有定时器,每隔5秒就弹出一个模式对话框...........这不是我想要的。
我就想要弹出一个模式对话框后,主程序就等待我操作这个模式对话框,请问该如何修改代码呢?
难道要在弹出模式对话框的OnCreate中KillTimer(1)么?
------解决方案--------------------
//弹出模式对话框
KillTimer(1); // 加一句
CSecondDlg sdlg;
sdlg.DoModal();
------解决方案--------------------
"弹出模式对话框"前,先Kill这个定时器
------解决方案--------------------
“难道在定时器的OnTimer中可以杀死自己”
当然,当你需要“OneShot”功能时 常常这样