急问:在mfc的从cwinthread继承的类中如何使用定时器,又如何消除定时器。

时间:2022-09-05 00:22:26
我在一个对话框的一个按钮的响应函数中产生了一个用户界面线程,那不需要产生界面,那么在那个线程内如何使用定时器,我的意思是说如何能利用cwnd的settimer和killtimer函数。如果不能使用这两个函数,有其他的函数能定时,并且可以在定时器时间未到时取消定时器吗?毕设在即,请大家不吝赐教。

3 个解决方案

#1


你可以使用window API中的::SetTimer函数,使用KillTimer函数来删除定时器
UINT_PTR SetTimer(
  HWND hWnd,              // handle to window
  UINT_PTR nIDEvent,      // timer identifier
  UINT uElapse,           // time-out value
  TIMERPROC lpTimerFunc   // timer procedure
);
最后一个参数是一个回调函数,来处理当时间到达是要完成的任务!

#2


settimer(), killtimer()
look msdn

#3


比较简单的方法是在线程启动的时候创建一个窗口(类似于你的应用程序的时候创建主窗口)

#1


你可以使用window API中的::SetTimer函数,使用KillTimer函数来删除定时器
UINT_PTR SetTimer(
  HWND hWnd,              // handle to window
  UINT_PTR nIDEvent,      // timer identifier
  UINT uElapse,           // time-out value
  TIMERPROC lpTimerFunc   // timer procedure
);
最后一个参数是一个回调函数,来处理当时间到达是要完成的任务!

#2


settimer(), killtimer()
look msdn

#3


比较简单的方法是在线程启动的时候创建一个窗口(类似于你的应用程序的时候创建主窗口)