python 计时器
今天做自动化界面工具的时候需要用到计时器,查阅了一下,发现以下的这位博友写的很简洁方便且实用
https://blog.csdn.net/qfxx_CSDN/article/details/81412465
以下为源码:
from PyQt5.QtWidgets import QWidget,QLabel,QPushButton,QGridLayout,QApplication
from PyQt5.QtCore import QTime,QTimer
import sys class ShowTime(QWidget):
def __init__(self):
super().__init__() self.isTimeStart=False #标记时间是否开始计时 self.setWindowTitle("QLable 显示计时时间")
self.lable_time=QLabel('运行时间:',self)
self.lable_time_val=QLabel('00:00:00',self) self.btn_start=QPushButton('开始显示')
self.btn_stop=QPushButton('停止计时') #布局
self.mainLayout=QGridLayout(self)
self.mainLayout.addWidget(self.lable_time,,,,)
self.mainLayout.addWidget(self.lable_time_val,,,,) self.mainLayout.addWidget(self.btn_start,,,,)
self.mainLayout.addWidget(self.btn_stop,,,,) #创建定时器对象和时间对象
self.timer=QTimer() #
self.timeClock=QTime() #信号与槽
self.btn_start.clicked.connect(self.timestart)
self.timer.timeout.connect(self.addtime)
self.btn_stop.clicked.connect(self.timestop) def timestart(self): #启动计时
if not self.isTimeStart:
self.timeClock.setHMS(,,) #初始时设置时间为 ::
self.timer.start() #启动定时器,定时器对象每隔一秒发射一个timeout信号
self.isTimeStart=True def addtime(self): #计时时间增一秒,并显示在QLable上
self.timeClock=self.timeClock.addMSecs() #时间增加一秒
self.lable_time_val.setText(self.timeClock.toString("hh:mm:ss")) #标签显示时间 def timestop(self): #停止计时
if self.isTimeStart:
self.timer.stop()
self.isTimeStart=False if __name__=="__main__":
app=QApplication(sys.argv)
demo=ShowTime()
demo.show()
sys.exit(app.exec())
python 计时器的更多相关文章
- python计时器类
import time as t class MyTimer(): def __init__(self): self.unit = ['年', '月', '日', '时', '分', '秒'] sel ...
- 如何用python编写一个计时器的程序
python计时器的程序的代码和注释 import time as t #引入time模块 class MyTimer(): def __init__(self): #构造函数 ...
- python基础 常见用法
1.python计时器timeit模块 1)timeit 模块定义了接收两个参数的Timer类,两个参数都是字符串. 参数1:要计时的语句或者函数 参数2:为参数1构建环境的导入语句 2)Timer对 ...
- Python的第二堂课(1)
一.编程语言的分类 机器语言:直接使用二进制命令去编写程序. 优点:执行效率高 缺点:开发效率低 汇编语言:用英文标签代替二进制命令去编写程序 优点:开发效率高于机器语言 缺点:执行效率低于机器语言 ...
- linux下安装使用虚拟环境
一.导语 在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题: 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难. 此时,我们需要对于不同 ...
- 解释性语言和非解释性语言,GIL锁
解释性语言:python写的代码就被称为程序,cpu硬件能运行二进制代码指令.demo.py需要经过python解释器编译才做才能执行. 非解释性语言:例如c语言程序,同样需要写代码.demo.c这个 ...
- CPython中的GIL
GIL:全局解释器锁(cpython中) GIL产生的背景,由于C语言底层原因,CPpython中多线程运行,每个线程都需要申请全局资源,但是Cpython并不能应对所有线程同时的资源请求,为防止发生 ...
- python实现屏保计时器
什么都不说先上图吧,Python 初学者实现屏保计时器 原理:利用 Python turtle 库实现快速画图,每隔一秒钟擦除屏幕,然后获得电脑实时时间,再次画图,呈现动态时间. 关于数字如果画,可以 ...
- python中的计时器:timeit
python中的计时器:timeit timeit 通常在一段程序的前后都用上time.time(),然后进行相减就可以得到一段程序的运行时间,不过python提供了更强大的计时库:timeit #导 ...
随机推荐
- Go的基本类型与变量
基本类型 布尔型:bool 长度:1字节 取值范围:true,false 注意:不可以用数字代表true或false 整型:int/uint 根据运行平台可能为32或64位 8位整型:int8/uin ...
- UIKit框架之NSObject
首先学习NSObject // // ViewController.m // localization // // Created by City--Online on 15/5/15. // Cop ...
- C#根据byte前两位获取图片扩展名
C#根据byte前两位获取图片扩展名 /// <summary> /// 根据byte前两位获取图片扩展名 /// </summary> /// <param name= ...
- JUC源码1-原子量
什么是原子量,原子量就是一次操作,要么成功,要么失败.比如java中的i++ 或i-- , 不具备原子性,每次读取的值都是不一样的,探究其原因,x86体系中,他的总线是32位的,i++的操作指令必须是 ...
- order by与索引(转载)
order by与索引 ORDER BY 通常会有两种实现方法,一个是利用有序索引自动实现,也就是说利用有序索引的有序性就不再另做排序操作了.另一个是把结果选好之后再排序. 用有序索引这种,当然是 ...
- Java Switch支持的类型问题
常见支持类型为int,byte,short,char及枚举类型.以上是JDK1.6以前的版本.JDK1.7时,又增加了String. 参考资料:1.java switch支持的数据类型 2.java中 ...
- 学习Memcached:1基本配置与安装
今天把刚刚学习的到memcached写在博客里,以免以后自己遗忘. 1.首先下载Memcached数据库服务文件,这是我下载好的这个memcached文件. 2.接下来就启动这个exe.通常我需要讲这 ...
- 221. 链表求和 II
假定用一个链表表示两个数,其中每个节点仅包含一个数字.假设这两个数的数字顺序排列,请设计一种方法将两个数相加,并将其结果表现为链表的形式. 样例 样例 1: 输入t:6->1->7 2-& ...
- 关于电脑重装win10系统导致编译环境失效(jdk)
年前换了固态,于是重装了系统发现之前装在非系统盘的jdk1.8配置过系统环境后仍然不能正常使用的问题,在犹豫一会后选择了重装jdk, 由于之前用的是win7在环境配置上是 变量值内加;即可自行分行,但 ...
- 理解Java反射
一.反射简介 Java让我们在运行时识别对象和类的信息,主要有2种方式:一种是传统的RTTI,它假定我们在编译时已经知道了所有的类型信息:另一种是反射机制,它允许我们在运行时发现和使用类的信息. 1. ...