Qt计时器使用方法详解
本文实例为大家分享了Qt计时器的使用方法,供大家参考,具体内容如下
计时器
在我们的日常设计程序中,经常需要固定时间段来刷新界面或者处理一些事务,这个时候计时器就很重要。
比如说在用Qt设计一个时间显示程序时
我们若想让这个标签实时变动,计时器就是个很好的方法。
计时器类QTimer
我们先看看它的信号-槽机制
public Q_SLOTS: void start(int msec); void start(); void stop(); Q_SIGNALS: void timeout(QPrivateSignal);
start
函数就是说计时器的开始;
对应的stop
就是计时器结束。
timeout
就是发射信号;
在直接使用start();
时,默认一秒发送约2000次信号
在使用start(int msec)
时,则是每msec毫秒发送一次信号
代码示例
注:为了方便显示信号发送的频率,我引入了i来记录此频率。
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { label = new QLabel(this); setCentralWidget(label); label->setAlignment(Qt::AlignCenter); //设置标签居中显示 timer = new QTimer; connect(timer,&QTimer::timeout,this,&MainWindow::timeoutShow); //定义计时器,并连接槽函数 timer->start(); //开始计时 } MainWindow::~MainWindow() { } void MainWindow::timeoutShow() { static int i = 0; //记录调用次数 label->setText(QTime::currentTime().toString()+" "+QString::number(i++)); //显示时间+次数 }
上述代码是没有设定定时器的。
定时器设置为100ms的
timer->start(100);
定时器设置为1000ms的
timer->start(1000);
上图中gif可能带有加速效果 具体按照时间跳动对比
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
PyQt5实现暗黑风格的计时器
本文实例为大家分享了PyQt5实现暗黑风格的计时器的具体代码,供大家参考,具体内容如下 主要是学习多线程知识,使用的是QTime(),但是似乎用QThread()更多一些 (QThread()与QTimer()的优势不再赘述) 但是记下来总没错 QSS渲染使用的是qdarkstyle,因为我一直觉得这个暗黑风很帅 qdarkstyle在GitHub上一千多颗星,还是很受欢迎的 import sys from PyQt5.QtCore import * from PyQt5.QtGui impor
-
用QT实现计时器功能
本文实例为大家分享了QT实现计时器功能的具体代码,供大家参考,具体内容如下 首先新建工程,Ctrl+N->Application(Qt)->Qt Widgets Application,然后进入设置界面,名称和路径随意就好:Build System不考虑性能用qmake比较简单:剩下的采用默认选项就行. 初始化结束后,其项目文件组织如下 Timer.pro 此为工程文件 Headers 用于存放头文件的目录 Sources 用于存放源代码 Forms 用于存放.ui文件,即界面设计文件 双击F
-
Qt实现简易计时器的示例代码
目录 一.项目介绍 二.项目基本配置 三.UI界面设计 四.主程序实现 4.1 mainwindow.h头文件 4.2 mainwindow.cpp源文件 五.效果演示 一.项目介绍 计时器实现四个功能:开始计时.停止计时.暂停计时以及打点.当点击暂停时,开始按钮和停止按钮无法点击,此时暂停按钮变为继续.当点击停止时,开始按钮和暂停按钮无法点击,此时停止按钮变为清零. 二.项目基本配置 新建一个Mainwindow界面.基本配置与其他Qt项目类似,这里不过多介绍. 三.UI界面设计 UI界面如下
-
QT设计秒表功能(跑步计时器)
本文实例为大家分享了QT设计秒表功能的具体代码,供大家参考,具体内容如下 设计目标 1. 定时器开始 2.复位从0开始计时 3.记录--把记录的时间添加到QTextBrowser, append(时间) 4. QTime t(0,0,0) t = t.addMsec( number ) t.toString (“hh:mm:ss:zzz”) 定时器(QTimer)的使用 定时器---定时发送信号timeoutQTimer 定时器类 1.创建定时器类对象QTimer mtimer; 2.把定
-
Qt计时器使用方法详解
本文实例为大家分享了Qt计时器的使用方法,供大家参考,具体内容如下 计时器 在我们的日常设计程序中,经常需要固定时间段来刷新界面或者处理一些事务,这个时候计时器就很重要. 比如说在用Qt设计一个时间显示程序时 我们若想让这个标签实时变动,计时器就是个很好的方法. 计时器类QTimer 我们先看看它的信号-槽机制 public Q_SLOTS: void start(int msec); void start(); void stop(); Q_SIGNALS: v
-
python为QT程序添加图标的方法详解
Qt是一种基于C++的跨平台图形用户界面应用程序开发框架.如何跨平台?上到服务器上位机,下到嵌入式GUI,上天入地无所不能.Qt最早是由1991年由Qt Company开发,但是到2008年,Qt Company科技被诺基亚公司收购,是的,就是拥有着我们很多情怀的诺基亚.但在2012年,Qt又被Digia收购.等到了2014年,跨平台集成开发环境Qt Creator 3.1.0正式发布出来,至此,全面支持iOS.Android.WP,QT的时代开始逐步展开. 本文重点给大家介绍python为QT
-
Qt控件点击消息获取的方法详解
目录 1.QPushButton响应鼠标点击消息 1.1自身响应消息clicked 1.2事件过滤器响应消息 1.3mousePressEvent事件获取 2.QLabel响应鼠标点击消息 2.1事件过滤器响应消息 2.2mousePressEvent事件获取 今日为大家分享一个小功能实现:如何获取控件点击响应. 在这里,我以两个最简单并且具有代表性的控件来进行功能讲解. 举例控件:QLabel.QPushButton 对于这两个控件大家应该都不会陌生了,做界面开发经常会用到的. 开发环境:VS
-
QT委托代理机制之Model View Delegate使用方法详解
目录 本地数据加载(Data) 添加数据模型(Model) 添加代理模型(Proxy) 添加元素的代理(Delegate) 添加视图层(View) 使用效果 之前的一篇文章中介绍过QT的委托代理机制,那时候由于理解的比较浅就简单的给了一个例子.最近又做了一部分相关的工作,发现之前的理解有点问题.这里就详细的介绍一下QT的委托代理机制的用法,希望对大家有帮助. Model-View-Delegate机制可以简单的理解为将本地的一些数据以特定的UI形式呈现出来.常见的数据结构包括列表数据(list)
-
Qt实现打地鼠游戏的方法详解
目录 功能讲解 1.确定地鼠数量 2.定义游戏难易程序 3.难度切换 4.定时器处理 总结 今天与大家分享一个小游戏的实现:打地鼠 看一下实现效果吧~ 在指定的时间内打中一定数额的地鼠,否则失败,就如上述展示效果一样,自己写的小程序,居然连第二关也过不去,还挺尴尬的! 实现打地鼠小游戏不难,最主要的核心就是依靠定时器,按照一定间隔触发.接下来,我来讲解下是如何实现的吧! 功能讲解 开发环境:VS2017 + Qt5.14.2 x64 1.确定地鼠数量 对于打地鼠这款游戏来说,地鼠是从任意的洞口钻
-
Qt实现小功能之圆形进度条的方法详解
目录 功能 图形绘制 1.绘制窗口整体背景色值 2.圆形进度条通道绘制 3.圆形进度条绘制 4.文本绘制 数值计算 1.计算步长 2.实时数据计算 在Qt自带的控件中,只有垂直进度条.水平进度条两种. 在平时做页面开发时,有些时候会用到圆形进度条,比如说:下载某个文件的下载进度. 展示效果,如下图所示: 实现这个功能主要由以下几个重点: 1:图形绘制 2:数值计算 也算是一个初级例子,下面我来讲解下如何实现这个简单的小功能吧! 功能 自定义绘制类:QRoundedProgress 继承自QWid
-
js控制台输出的方法(详解)
console.log(object[, object, ...]) 在控制台输出一条消息.如果有多个参数,输出时会用空格隔开这些参数. 第一个参数可以是一个包含格式化占位符输出的字符串,例如: console.log("The %s jumped over %d tall buildings", animal, count); 上面的例子可以用下面的无格式化占位符输出的代码替换: console.log("The", animal, "jumped ov
-
Linux中使用NTP保持精确时间的方法详解
前言 如何保持正确的时间,如何使用 NTP 和 systemd 让你的计算机在不滥用时间服务器的前提下保持同步.下面话不多说了,来一起看看详细的介绍吧. 它的时间是多少? 让 Linux 来告诉你时间的时候,它是很奇怪的.你可能认为是使用 time 命令来告诉你时间,其实并不是,因为 time 只是一个测量一个进程运行了多少时间的计时器.为得到时间,你需要运行的是 date 命令,你想查看更多的日期,你可以运行 cal 命令.文件上的时间戳也是一个容易混淆的地方,因为根据你的发行版默认情况不同,
-
对PyQt5中树结构的实现方法详解
树的实质是很多条数据按照一定的内在关系,分层级显示出来.因此每一条数据包括数据项和相互关系.数据项就对应了树中的column,而相互关系对应的是应该显示在哪一个条目下. PyQt5中,树的实现有两种形式,其中较为简单的是使用Tree Widget控件. 对于静态的数据,实现树结构可以直接在Qt中拖入一个Tree Widget控件,然后右键点击它,选择编辑. 其中column是每一条数据有几个数据项,Item体现的是数据和数据之间是什么关系. 对于我们需要从数据库中查出来的数据,我么需要根据实际的
-
Spring计时器stopwatch使用详解
StopWatch是位于org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ms级别),适用于同步单线程代码块. 正常情况下,我们如果需要看某段代码的执行耗时,会通过如下的方式进行查看: public static void main(String[] args) throws InterruptedException { StopWatchTest.test0(); // StopWatchTest.test1(); } public st
随机推荐
- js借助ActiveXObject实现创建文件
- Win7旗舰版中的IIS7配置asp.net的运行环境
- Oracle中scott表结构与简单查询实例分析
- PHP curl伪造IP地址和header信息代码实例
- PHP时间和日期函数详解
- JS绘制微信小程序画布时钟
- Java制作智能拼图游戏原理及代码
- sql server 2000数据库备份还原的图文教程
- SQL Server简单实现数据的日报和月报功能
- js函数使用技巧之 setTimeout(function(){},0)
- C#中文随机数实现方法
- Spring实现IoC的多种方式小结
- 页面未随软键盘上升及android隐藏软键盘总结
- JavaWeb Spring注解Annotation深入学习
- Struts2学习笔记(4)-通配符的使用
- Python2.X/Python3.X中urllib库区别讲解
- Angular实现下拉框模糊查询功能示例
- Android 快速实现防止网络重复请求&按钮重复点击的方法
- 无法使用pip命令安装python第三方库的原因及解决方法
- Linux下redis的安装与使用图文教程