Qt timer学习
QTimer(重复和单发计时器)
应用QTimer时,先创建一个QTimer类,利用connect将timeout()与对应槽函数连接,在调用start()函数设置定时器时间间隔,每经过设置时间后,定时器会发出一个timeout(),
相应的槽函数就会被触发,直到调用stop()函数停止。
举例:
QTimer *timer = new QTimer(this);
connect(timer,SIGNAL(timeout()),this,SLOT(function));
timer->start(1000);
也可以不用定义QTimer类,直接调用QTimer的成员函数singleShot(),定时器只执行一次
QTimer::singleShot(200,this,SLOT(updateCaption()));//200/1000秒后启动功能函数
-----------------------------------------------------------------------------
2.成员函数
1)void QTimer::singleShot(int msec,Qt::TimerType timeType,const QObject *receiver,const *member)//在规定的时间间隔调用函数
举例:
#include<QApplication>
#include<QTimer>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QTimer::singleShot(10000,&app,SLOT(quit()));
........
return app.exec();
}//功能表述,在10分钟后,应用程序将关闭
2)void QTimer::start(int msec);
启动或者重启服务器,msec为时间间隔,没有参数时,时间间隔为0.
3)void QTimer::stop();
停止计时器
4)void QTimer::timeout();
当定时器时间到时,信号被发射。
5)int QTimer::timerID()
返回正在运行的计时器的ID号,否则返回为-1
-----------------------------------------------------------------------------
注意:
QTimer的精确度依赖于底下的操作系统和硬件,绝大多数平台支持20毫秒的精确度,一些平台可以提供更高的。如果Qt不能传送定时器触发所要求的数量,它将会默默地抛弃一些。
另一个使用QTimer的方法是为你的对象调用QObject::startTimer()和在你的类中(当然必须继承QObect)重新实现QObject::timerEvent()事件处理器。缺点是timerEvent()事件 处理器不支持像单触发器或信号那样的高级水平。
一些操作系统限制可能用到的定时器的数量,Qt会尽力在限制范围内工作。
-----------------------------------------------------------------------------
Qt timer学习的更多相关文章
- Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了
Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了.Google的话能解决很多问题,如果没搜到资料的话,如果不是问题太过具体或者奇葩,那就是搜索方法的问题.中文教程中,Qt学习之路系列很不 ...
- [转] Qt 多线程学习
Qt 多线程学习 转自:http://www.cnblogs.com/IT-BOY/p/3544220.html 最近的项目上用到了关于多线程的知识,自己也比较感兴趣,所以就拿了那本<C++ G ...
- Qt入门学习——Qt 5 帮助文档的使用
Qt入门学习——Qt 5 帮助文档的使用 学习图形界面开发,肯定离不开帮助文档的使用,因为它不像 C 语言那样就那么几个函数接口,图形接口的接口可以用海量来形容,常用的我们可能能记住,其它的真的没有必 ...
- QT入门学习笔记2:QT例程
转至:http://blog.51cto.com/9291927/2138876 Qt开发学习教程 一.Qt开发基础学习教程 本部分博客主要根据狄泰学院唐老师的<QT实验分析教程>创作,同 ...
- PyQt(Python+Qt)学习随笔:使用实例方法赋值方式捕获事件
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在<第15.17节 PyQt(Python+ ...
- PyQt(Python+Qt)学习随笔:QDial刻度盘部件功能简介
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 Designer中的Dial刻度盘输入部 ...
- PyQt(Python+Qt)学习随笔:QSlider滑动条部件功能简介
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 Designer输入部件中的Horizo ...
- PyQt(Python+Qt)学习随笔: QDoubleSpinBox浮点数字设定部件简介
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在<PyQt(Python+Qt)学习随笔: ...
- PyQt(Python+Qt)学习随笔:富文本编辑器QTextEdit功能详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 一.概述 QTextEdit是一个高级的所见即所得的文档查看器和编辑器 ...
随机推荐
- 李洪强iOS经典面试题144-数据存储
李洪强iOS经典面试题144-数据存储 数据存储 sqlite中插入特殊字符的方法和接收到处理方法. 除'其他的都是在特殊字符前面加"/",而 ' -> '' .方法:k ...
- 02.JavaScript基础上
JavaScript组成 ECMAScript:解释器.翻译 .平时我们写的代码都是用英文数字之类,而计算机只能读懂0和1,ECMAScript可以把我们写的翻译给计算机,把计算机写的传达给我们DOM ...
- 《大道至简》第一章——编程的精义_读后感(Java伪代码形式)
<大道至简>第一章——编程的精义_读后感(Java伪代码形式)1.愚公移山//愚公为团体的项目组织者.团体经理.编程人员.技术分析师等//子孙荷担者三人为三名技术人员//遗男为外协//目标 ...
- Ubuntu使用阿里云软件源
如果在安装Ubuntu时,选择的地区为美国,建议更新为阿里云或国内 软件源 sudo sed -i s/archive.ubuntu.com/mirrors.aliyun.com/g /etc/apt ...
- java.util.zip获取Zip文件条目InputStream
package com.test; import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import ja ...
- mvc ef LINQ to Entities 不识别方法“Int32 Parse(System.String)”,因此该方法无法转换为存储表达式。
private sys_User GetUserInfo() { sys_User model = null; var userId = Convert.ToInt32(AccountHelper.G ...
- MULTITHREADING AND CHIP MULTIPROCESSORS
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION The most important me ...
- android studio 2.0 GPU Debugger使用说明
GPU Debugger GPU Debugging Tools The GPU debugging tools are an experimental feature intended to hel ...
- HTTP常见头域
近期没需求,也没什么心情去看书,就总结一下自己以前看的HTTP协议基础内容吧.(会很乱,可能不适合一点都没接触过HTTP协议的人观看) 一.HTTP Request header 1.Cache头域 ...
- 延时调用的php代码
比如我们想做一个类似于康盛uchome的定时触发任务,任务靠用户访问触发的,但是你触发任务是不能影响用户本身对页面的访问速度(也就是说不能任务执行十秒钟你就让用户等待十秒钟)刚好昨天把这个弄完了.拿出 ...