QTimer 的使用
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(1000,this,SLOT(updateCaption())); // 1秒后启动功能函数
成员函数
1)void QTimer::singleShot(int msec,Qt::TimerType timeType,const QObject receiver,const member) //在规定的时间间隔调用函数
举例:
#include
#include
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 的使用的更多相关文章
- QTimer的用法
1.singleShot的用法 代码: QTextEdit *testEdit = new QTextEdit("hello world"); testEdit->setMa ...
- pyqt4:在线程Qthread中使用定时器Qtimer
GUI main 部分,主app类中的__init__初始化方法中添加 实例化线程 self.s2_thread=Worker2() 初始化一个定时器 self.log_get=QtCore.QTim ...
- QT QDateTime类、QTimer类
QDateTime类,头文件#include <QDateTime> 可以使用QDateTime类来获得系统时间.通过QDateTime::currentDateTime()来获取本地系统 ...
- QTimer太让人失望了,一秒触发一次事件都不准确。。
今天做项目中,我用QTimer来模拟数据生成,在另外的设备上接受.另外设备上有时1秒读不到数据,查询原因很久,终于发现是QTimer的问题. 测试代码如下 有兴趣同学可以自己试试. t = new Q ...
- Qt之等待提示框(QTimer)
简述 上节讲述了关于QPropertyAnimation实现等待提示框的显示,本节我们使用另外一种方案来实现-使用定时器QTimer,通过设置超时时间定时更新图标达到旋转效果. 简述 效果 资源 源码 ...
- QTimer源码分析(以Windows下实现为例)
QTimer源码分析(以Windows下实现为例) 分类: Qt2011-04-13 21:32 5026人阅读 评论(0) 收藏 举报 windowstimerqtoptimizationcallb ...
- CPU满格的元凶,这回是由于QTimer引起的(默认interval是0,太猛)
timer_space = new QTimer(); qDebug() << SystemGlobal::m_app->SpaceUse; qDebug() << ti ...
- 为进度条增加“伪进度条”?(使用QEventLoop和QTimer)
在实际开发中,可能会遇到这样的场景:“一个操作非常耗时,但却无法获取其进度百分比”.造成这种情况的原因可能有: 1)该操作属于第三方库(泛指我们使用但无法修改的第三方代码,因此质量有高有底),可能由于 ...
- Qt中使用定时器(可使用QObject::timerEvent定时执行,QTimer::singleShot可只触发一次)
在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器:一种是使用QTimer类.定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度 1.QObject类的定时器 QObje ...
- QTimer在QThread环境中失效的问题
QTimer在非QThread的环境下能正常工作.但在QThread环境下,需要做一些改动才能正常工作. 创建Qt的线程有两种方式: 1. 子例化QThread 可以在虚函数run中启动定时器,大致的 ...
随机推荐
- 逻辑回归 vs 决策树 vs 支持向量机(II)
原文地址: Logistic Regression vs Decision Trees vs SVM: Part II 在这篇文章,我们将讨论如何在逻辑回归.决策树和SVM之间做出最佳选择.其实 第一 ...
- numpy 与 matplotlib 的应用
numpy 与 matplotlib 的应用 一.库函数介绍 1. numpy库 NumPy(Numeric Python)提供了一个N维的数组类型ndarray,Numpy底层使用C语言编写,内部解 ...
- android-基础编程-ViewPager
ViewPager android 提供的基础V4包,android studio 导入gradle compile 'com.android.support:support-v4:25.0.0' 1 ...
- JavaScript复习笔记——数据类型
1.undefined 使用var声明但未对其进行初始化时,这个变量的值就是undefined. 对未被初始化的值使用typeof会返回undefined值,而对未声明的变量执行typeof操作同样也 ...
- jQuery 基础语法
jQuery介绍 1.jQuery是一个轻量级的.兼容多浏览器的JavaScript库. 2.jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行Aja ...
- 虚拟机Linux不能上网简单有效的解决办法
对于刚开始接触Linux系统的用户来说,先使用虚拟机Linux学习是不错的选择.但是在用虚拟机上网的时候,总是出现这样那样的错误,到底该怎么办呢?本文笔者和大家分享一下虚拟机Linux不能上网的简单有 ...
- VS Code 调试 Angular 和 TypeScript 的配置
一.安装插件 在 Visual Studio Code 中打开扩展面板(快捷键 Ctrl+Shift+X),搜索安装 Debugger for chrome 插件). 二.配置启动参数 在 Visua ...
- Monad Explained in One Picture
The point of Monad is composability. In the green category, T -> Monad<U> and U -> Monad ...
- QQ现状深度剖析:你还认为QQ已经被微信打败了吗?
本文来自“人人都是产品经理”公众号作者栗栗粥的原创分享. 1.前言 移动端的时代里,微信占据了社交领域的半壁江山,不得不让人想起曾经PC时代里的王者“QQ”,微信的爆发和QQ的停滞让很多人认为微信 ...
- Javascript高级编程学习笔记(68)—— 事件(12)设备事件
设备事件 随着智能手机与平板电脑的普及,为了更好地让用户与这些设备进行交互 浏览器引入了一种新的方式,而一类新的事件也应运而生,这就是设备事件 W3C从2011年开始制定关于设备事件的草案 下面将会介 ...