KillTimer()

在OnTime()中调用KillTimer(),实现只触发一次的定时器。

当您的程序用完定时器时,它呼叫KillTimer函数来停止定时器消息。在处理WM_TIMER消息时,您可以通过呼叫KillTimer函数来编写一个「限用

一次」的定时器。KillTimer呼叫清除消息队列中尚未被处理的WM_TIMER消息,从而使程序在呼叫KillTimer之后就不会再接收到WM_TIMER消

息。

该函数并不移除WM_TIMER 先前发送到消息列队中的消息。

下面的函数实现了定时器只调用一次。定时器第一次触发时,直接KillTimer(nIDEvernt),销毁以前调用SetTimer创建的用nIDEvent标识的定时器事件,但是不能将此定时器有关的未处理的WM_TIMER消息都从消息队列中清除。所以继续执行下面的代码。但是由于nIDEvent标识的定时器事件已经被消除了,所以不会再执行nIDEvent的定时器了。这样就实现了触发一次的定时器。

//定时器SetTimer(1, 50, NULL);void ConfigInstallIn::OnTimer(UINT_PTR nIDEvent){if (nIDEvent == 1){KillTimer(nIDEvent);m_pwndInstallVideo->StartVideo(m_tBoxPuParam.dwDestIp, m_tBoxPuParam.wPort, m_tBoxPuParam.wVideoSrc,\m_tBoxPuParam.wStreamChn, m_tBoxPuParam.pszStreamType, m_tBoxPuParam.pszAuthorizeInfo, \m_tBoxPuParam.pUserName, m_tBoxPuParam.pPassWord);if(m_bShowFrame){m_pwndInstallVideo->m_l32AppSeiScoreFlag = 1;  }else{m_pwndInstallVideo->m_l32AppSeiScoreFlag = 0;}m_pwndInstallVideo->FrameCallBack(TRUE);}}

支持

欢迎关注公众号  谁吃薄荷糖,主要记录日常中觉得有意思的事情以及分享开发实践,保持深度和专注度,喜欢的点击右下角的再看哦。

KillTimer()的使用相关推荐

  1. KillTimer析构函数

    析构函数中不能用KillTimer, 原因:在析构函数中窗口已经不存在,所以KillTimer函数已经没有了窗口句柄,当然会出错   使用位置:BOOL DestroyWindow(void)函数中. ...

  2. MFC 定时器用法 SetTimer、KillTimer

    什么时候我们需要用到SetTimer函数呢?当你需要每个一段时间执行一件事的的时候就需要使用SetTimer函数了. 使用定时器的方法比较简单,通常告诉WINDOWS一个时间间隔,然后WINDOWS以 ...

  3. SetTimer和KillTimer详解

    原文出处:http://www.cppblog.com/ivenher/articles/19969.html 在编程时,会经常使用到定时器.使用定时器的方法比较简单,通常告诉Windows一个时间间 ...

  4. 13. OD-内嵌补丁,过期的软件DVD Menu Studio破解,switch函数,break等于KillTimer

    内嵌补丁指在程序文件中把补丁代码写入文件里面达到破解的目的. 查询KillTimer函数,意思是break的意思 eax不能等于3,等于4就会进入正确轨道 我们回溯cmp eax,3指令,回到跳转该指 ...

  5. WinAPI: SetTimer、KillTimer - 创建与移除高性能定时器

    //创建定时器函数的声明: SetTimer(hWnd: HWND; {与定时器相关联的窗口句柄}nIDEvent: UINT; {指定一个非 0 的定时器标识符}uElapse: UINT; {指定 ...

  6. QObject::killTimer: Timers cannot be stopped from another thread

    多线程中如果不慎重使用时间相关函数类如cv::waitkey(), QTimer()等, 如果没有管理好线程关系,容易导致时间混乱,报错可能是如下. QObject::killTimer: Timer ...

  7. 用MFC中的SetTimer、OnTimer和KillTimer实现的简单计时器与倒计时的Demo

    MFC中的定时控制功能主要由下面三个函数共同实现: SetTimer, KillTimer()和OnTimer(). 简单的说,Settimer是设置一个计时器,当Settimer设置的时间到了,就会 ...

  8. KillTimer失败(SetTimerKillTimer的大坑)

    今天写计算机网络的作业,要实现GBN和选择重传,那就需要发送端对每个分组都设置一个计时器,起初我使用clock(),发现不太行,Google了一阵子,转用SetTimer. 结果又踩了一堆坑,以下是我 ...

  9. MFC之按键消息(长按处理)

    想要实现长按键的一些控制,查了查可以通过捕获键盘事件,然后处理按键时需要进行的操作.下面简单的实现左右按键界面更新数值加减.  1. 重载PreTranslateMessage(MSG* pMsg)函 ...

最新文章

  1. java实现局域网内单对单和多对多通信的设计思路
  2. 数据结构---线段树
  3. 目录config.php怎么修改域名,config.php · wlphp/基于宝塔面板api给站点新增删除域名接口 - Gitee.com...
  4. 图论(六)图的两种表示方法
  5. 5.4 Spring AOP
  6. CF :K 一个含n条边的带权无向连通图,q次查询,每次查询两点间的最短距离。...
  7. 《spring-boot学习》-01-初体验
  8. 记录——《C Primer Plus (第五版)》第十章编程练习第一题
  9. 【渝粤教育】电大中专建筑材料 (4)作业 题库
  10. CTF-Mayday
  11. chrome访问不了go语言中文网
  12. 2020年了,Windows Me还能用吗?
  13. c语言计算一个三位数的个十百位之和_C语言的那些经典程序
  14. 横陈的岁月,阡陌的红尘,你闯进了我的世界
  15. 华硕计算机电源已连接未充电,笔记本电池显示“电源已接通,未充电”
  16. 纪念一下获得十大优秀学生
  17. Martin Fowler微服务论文--译文
  18. 保持健康和活力 - 颈椎病康复指南
  19. plsql 英文版 修改字体,工具栏大小
  20. iOS:quartz2D绘图(绘制渐变图形)

热门文章

  1. NYOJ 201 作业题 动态规划
  2. bzoj 1632: [Usaco2007 Feb]Lilypad Pond【bfs】
  3. 关于索引的相关 day45
  4. 如何使用 Jenkins、GitHub 和 Docker 在 Azure 中的 Linux VM 上创建开发基础结构
  5. WinForm 之 程序启动不显示主窗体
  6. InvokeHelper,让跨线程访问/修改主界面控件不再麻烦(转)
  7. Python学习:数据结构
  8. 现代谱估计:多窗口谱重建
  9. Linux动态链接库的使用
  10. 【笔记】An explainable deep machine vision framework for plant stress phenotyping