前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[C-C++]控制台用定时器

[C-C++]控制台用定时器

作者头像
祥知道
发布2020-03-10 15:14:18
9300
发布2020-03-10 15:14:18
举报
文章被收录于专栏:祥的专栏祥的专栏

  • Timer在MFC程序中的使用
    • 源代码
  • Timer在控制台程序中的使用
    • 需要用的函数
    • 源代码

Timer在MFC程序中的使用

MFC中有一个很好用的定时器函数。

  • 使用SetTimer()进行设置定时器
  • 使用KillTimer()关闭定时器
  • OnTimer()函数中,响应WM_TIMER这个消息,也就是定时器的处理函数。

源代码

代码语言:javascript
复制
#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在控制台程序中的使用

在对实时指标不是非常苛刻时,这个功能可以帮助我们完成很多功能。那么问题来了,这个可以用在一般控制台程序中吗?答案当然是肯定的。

需要用的函数

代码语言:javascript
复制
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
);

源代码

代码语言:javascript
复制
#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);
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Timer在MFC程序中的使用
    • 源代码
    • Timer在控制台程序中的使用
      • 需要用的函数
        • 源代码
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档