C++控制台用定时器实例代码
本文研究的主要是C++控制台用定时器的相关实例,具体如下。
Timer在MFC程序中的使用
在MFC中有一个很好用的定时器函数。
- 使用SetTimer()进行设置定时器
- 使用KillTimer()关闭定时器
- 在OnTimer()函数中,响应WM_TIMER这个消息,也就是定时器的处理函数。
源代码
#define TIMER_UDP_QFX 3//定时器的ID int Period = 1000;//1000ms的定时器 //设置一个定时器 SetTimer(TIMER_UDP_QFX, Period, NULL); //在定时器处理函数中设置自己的处理代码 void CFlightMissionPage::OnTimer(UINT_PTR nIDEvent) { //UPD 更新界面 if (TIMER_UDP_QFX == nIDEvent) {//如果定时器ID是 TIMER_UDP_QFX 时,进行处理 //······ //处理代码 //······ } } //不需要定时器时,关闭定时器 KillTimer(TIMER_UDP_QFX);
Timer在控制台程序中的使用
在对实时指标不是非常苛刻时,这个功能可以帮助我们完成很多功能。那么问题来了,这个可以用在一般控制台程序中吗?答案当然是肯定的。
需要用的函数
UINT_PTR SetTimer( HWND hWnd, // handle to window UINT_PTR nIDEvent, // timer identifier UINT uElapse, // time-out value TIMERPROC lpTimerFunc // timer procedure ); VOID CALLBACK TimerProc( HWND hwnd, // handle to window UINT uMsg, // WM_TIMER message UINT_PTR idEvent, // timer identifier DWORD dwTime // current system time );
源代码
#include <Windows.h> //控制台消息响应 void CALLBACK TimerProc(HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime) { if(1 == idEvent) {//如果是定时器1 ::MessageBeep(0);//Beep叫 } } int main() { int TimerID = 1;//Timer的ID是1 int peried = 1000;//Timer的间隔是 1000ms //设置Timer ::SetTimer(NULL, TimerID, peried, &TimerProc); ::MSG msg; while(::GetMessage(&msg, NULL, 0, 0)) { ::DispatchMessage(&msg); } }
总结
以上就是本文关于C++控制台用定时器实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
您可能感兴趣的文章
- 04-02c语言函数调用后清空内存 c语言调用函数删除字符
- 04-02func函数+在C语言 func函数在c语言中
- 04-02c语言用函数写分段 用c语言表示分段函数
- 04-02c语言没有round函数 round c语言
- 04-02c语言分段函数怎么求 用c语言求分段函数
- 04-02c语言调用函数求fibo C语言调用函数求阶乘
- 01-10数据结构课程设计-用栈实现表达式求值的方法详解
- 01-10使用OpenGL实现3D立体显示的程序代码
- 01-10HDOJ 1443 约瑟夫环的最新应用分析详解
- 01-10深入理解C++中常见的关键字含义
阅读排行
本栏相关
- 04-02c语言函数调用后清空内存 c语言调用
- 04-02func函数+在C语言 func函数在c语言中
- 04-02c语言的正则匹配函数 c语言正则表达
- 04-02c语言用函数写分段 用c语言表示分段
- 04-02c语言中对数函数的表达式 c语言中对
- 04-02c语言编写函数冒泡排序 c语言冒泡排
- 04-02c语言没有round函数 round c语言
- 04-02c语言分段函数怎么求 用c语言求分段
- 04-02C语言中怎么打出三角函数 c语言中怎
- 04-02c语言调用函数求fibo C语言调用函数求
随机阅读
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 01-10delphi制作wav文件的方法
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10C#中split用法实例总结
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10SublimeText编译C开发环境设置
- 01-11ajax实现页面的局部加载
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文