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是一个高级的所见即所得的文档查看器和编辑器 ...
随机推荐
- MySQL查询语句(select)详解(2)
7.子查询 当进行查询的时候,需要的条件是另外一个select语句的结果,这时候就要用到子查询 用于子查询的主要关键字有:in,not in,=,!=,exists,not exists等. 以下两张 ...
- for循环
1.使用for循环输出矩形 public static void print1(int h,int w){ for(int i=0; i<h; i++){ f ...
- 使用ZIM桌面维基做笔记
最近尝试了使用ZIM做笔记,感觉还不错 ubuntu下直接到软件中心即可安装,或者 sudo apt-get install zim windows下的到此下载http://www.glump.net ...
- 八月25日认识java
java的起源:1991年SUN公司启动的“Green”项目制作出的Star7, java的发展:于1995年5月23日正NSU式发布第一个java开发工具:java在1998年推出JDK1.2,表示 ...
- JAVA实现复制文件夹
package com.filetest; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor ...
- 完成对数据库的CRUD操作
PS:查询相对复杂,要处理结果集,增删改则不用. package it.cast.jdbc; import java.sql.Connection; import java.sql.ResultSet ...
- 72. 求m到n之和
求m到n之和 int sum(int m, int n) { int i, result = 0; for (i=m; i<=n; i++) result = result+i; return ...
- ExtJS笔记 Ext.data.Types
This is a static class containing the system-supplied data types which may be given to a Field. Type ...
- Struts2 OGNL 字符串自定义转化对象细节
要使用Struts2的自定义对象转化,需要几个要点: 1.要有继承DefaultTypeConverter的实现类,要重写convertValue,并且参数value转化而来的String是Strin ...
- solr添加安全设置
solr版本为5.2.1 配置在了外网,不希望任何人都能拿到数据,所以添加了安全设置,参考 http://www.jianshu.com/p/1e79edb2b817 按照上面的流程走了一遍 1./u ...