当前位置: 首页 > news >正文

各大网站搜索引擎入口梧州网页设计师招聘

各大网站搜索引擎入口,梧州网页设计师招聘,网站开发常用png,工作服款式图片大全qt定时器的使用一般有以下几种方式#xff1a; 1、直接使用QTimer对象#xff0c;绑定定时器的timeout信号#xff1b; 2、使用QTimer的静态方法singleshot方法#xff0c;产生一个一次性的定时事件 3、在QObject子类中#xff0c;调用startTimer方法#xff0c;产生定…qt定时器的使用一般有以下几种方式 1、直接使用QTimer对象绑定定时器的timeout信号 2、使用QTimer的静态方法singleshot方法产生一个一次性的定时事件 3、在QObject子类中调用startTimer方法产生定时器并在timerEvent方法中实现其处理 以上三种方法本质上都是继承QObject类调用QObject的startTimerkillTimer方法等实现的 QObject类中定时器相关的方法有startTimer、killTimer、timerEvent三个方法 startTimer源码如下 startTimer的实现比较简单主要是向eventDispatcher中注册定时器事件QAbstractEventDispatcher中registerTimer的实现如下 生成一个定时器的id并调用派生类的registerTimer的函数 将定时器相关信息保存在WinTimerInfo结构中并调用QEventDispatcherWin32Private类中的registerTimer方法 首先会重新计算定时的时间间隔调用calculateNextTimeout方法 如果是非常粗糙的定时方式或者定时时间超过2s且定时器类型不是精确定时则定时器的触发时间存在500ms左右的偏差 QZeroTimerEvent事件 如果定时时间间隔为0ms则会调用qt的postEvent方法向QEventDispatcherwin32对象抛一个QZeroTimerEvent事件切入到qt的事件循环中;通过上几节介绍可知通过postEvent抛出的事件最终会进入到qt_internal_proc方法中 最终会进入到q-sendPostedEvents()方法中 几经周转会进入到QEventDispatcherWin32的event方法中此处是ZeroTimerEvent事件会调用QCoreApplication::sendEvent方法向定时器事件的QObject对象发送一个QTimerEvent事件从而转入到QObject的event方法中执行并在此抛出一个QZeroTimerEvent事件 回到registerTimer方法中 PreciseTimer事件 如果定时器事件类型为精确定时会调用windows操作系统的timerSetEvent接口实现精确定时定时精度1ms其对应的回调函数qt_fast_time_proc方法如下: 其会在回调函数中向QEventDispatcherWin32对象post一个QTimerEvent事件最终进入到QEventDispatcherWin32的event函数中调用其sendTimerEvent函数其定义如下 在其方法中会调用QCoreApplication的sendEvent函数最终切入到QObject的event函数中 VeryCoarseTimer事件 精度要求不高的事件会调用windows API的setTimer函数注册一个定时器事件此事件的回调函数为nullptrqt会使用windows系统产生的WM_TIMER事件最终会被qt_internal_proc回调函数捕获到 其会直接调用QEventDispatcherWin32函数的sendTimerEvent方法其余执行流程同上 总结 1、qt定时器会产生3种类型的定时事件 QZeroTimerEvent事件、QTimerEventPreciseTimerQTimerEventVeryCoarseTimer、CoarseTimer 2、当定时间隔为0时会产生QZeroTimerEvent事件其由QCoreApplication的postEvent方法切入到qt的事件循环中几经周转在此回到QEventDispatcher类中执行 3、当定时的精度要求比较高时可以使用PreciseTimer事件类型其调用weindowsAPI的timerSetEvent接口实现高精度定时并在其回调函数中调用postEvent方法切入到qt的事件循环中处理 4、当定时精度要求不高时可以使用默认事件类型即VeryCoarseTimer事件类型其会调用windowsAPI的setTimer接口并产生WM_TIMER事件切入到qt的事件循环中 5、CoarseTimer事件类型会根据其时间间隔决定产生的是精确定时还是粗糙的定时方式。
http://www.pierceye.com/news/907591/

相关文章:

  • 网站开发资质网站域名服务错误
  • html5 社团网站模板 代码下载上海做营销网站哪个公司好
  • 动易网站 模板南京企业建站系统模板
  • 网站实名网站建设技术百科
  • 网站策划书范文模板网盟推广费
  • 先做网站还是先做app唐山模板建站定制网站
  • 小城镇建设的网站中的主要观点廊坊网站设计公司
  • 银联支付网站建设企业qq登录
  • dw怎样做网站链接aspcms建站
  • 网站的栏目wordpress php版本太低
  • 浙江网站制作出效果图
  • 电子商务是电商吗产品seo是什么意思
  • 黑龙江省建设工程质量协会网站中文搜索引擎网站
  • 汽车报价网站宁波网络推广丿易企网怎么样
  • php个人网站简洁手机下载视频网站模板
  • 双语网站方法wordpress分类内没有文章
  • 做网站后期为什么续费仿uehtml WordPress
  • 网站实时显示wordpress 网站
  • 重庆电子网站建设ashx做网站
  • 河南双师培训网站html 路径 网站根路径
  • 专业定制网站企业如何注册公司营业执照
  • 福泉市自己的网站某个产品营销推广方案
  • 金坛市建设局网站微信网站有什么作用
  • 设计建网站今天的最新消息新闻
  • 电商行业建设网站ui网页设计培训学校
  • fineui 如何做网站私密浏览器免费版片视频动漫
  • 产地证是在哪个网站上做一起做网店下载安装
  • 舞钢市城乡建设局网站阿里巴巴网站谁做的
  • 巴彦淖尔市网站制作网站不收录怎么解决
  • 站群源码长春建设网站公司哪家好