MFC学习之路十三之定时器的使用

简介: MFC学习之路十三之定时器的使用

1、定时器的介绍:

1、设置定时器:CWnd::SetTimer()

2)关闭定时器:CWnd::KillTimer() //括号里加入定时器id即可。

3)定时器消息:WM_TIMER

2、原理:SetTimer()函数每隔一段时间调用一次OnTimer()函数。

  • 创建消息WM_CREATE(设置一个定时器)
int CMFCApplication3Dlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
  if (CDialogEx::OnCreate(lpCreateStruct) == -1)
    return -1;
    //说明每隔500毫秒,调用一次消息WM_TIMER
        //1:定时器id
        //500:时间间隔,单位(毫秒)
        //NULL:使用系统默认的处理函数,每隔500毫秒处理消息WM_TIMER
        SetTimer(1 , 1000 , NULL);
    return 0;
}
  • 创建消息WM_TIMER(定时器功能实现)
void CMFCApplication3Dlg::OnTimer(UINT_PTR nIDEvent)
{
  // TODO: 在此添加消息处理程序代码和/或调用默认值
  if( nIDEvent==1)  //作用是:如果有多个定时器,可以通过括号里面id区分
   {
  static int i = 0 ;
  i++;
  CString str;
  str.Format("TEXT(%d)",i);
    if(i ==5 )
      {
      KillTimer(1);
      }
    MessageBox(str);
  }
  CDialogEx::OnTimer(nIDEvent);
}

效果:

目录
相关文章
|
机器学习/深度学习 算法 PyTorch
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
|
SQL JavaScript 前端开发
springboot-plus、简介、开源单体系统,系统拆分和微服务 下
springboot-plus、简介、开源单体系统,系统拆分和微服务 下
1698 0
springboot-plus、简介、开源单体系统,系统拆分和微服务  下
|
自然语言处理 算法 Java
C/C++ 程序员编程规范之注释
C/C++ 程序员编程规范之注释
890 1
Halcon找圆系列(1)如何检测圆形
Halcon找圆系列(1)如何检测圆形
2750 0
Halcon找圆系列(1)如何检测圆形
关于 C#使用Console.WriteLine调试没有命令行输出 的解决方法
关于 C#使用Console.WriteLine调试没有命令行输出 的解决方法
关于 C#使用Console.WriteLine调试没有命令行输出 的解决方法
|
Web App开发 XML 网络协议
|
编译器 C语言 C++
C++ 中使用 `<bits/stdc++.h>` 的利与弊
C++ 中使用 `<bits/stdc++.h>` 的利与弊
1302 2
|
存储 Kubernetes 调度
kubernetes核心技术之Pod知识总结
【4月更文挑战第2天】kubernetes核心技术之Pod知识总结
620 0

热门文章

最新文章