zoukankan      html  css  js  c++  java
  • 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,0,0,1,1)
            self.mainLayout.addWidget(self.lable_time_val,0,1,1,2)
            
            self.mainLayout.addWidget(self.btn_start,1,1,1,1)
            self.mainLayout.addWidget(self.btn_stop,1,2,1,1)
            
            #创建定时器对象和时间对象
            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(0,0,0)  #初始时设置时间为  000000
                self.timer.start(1000)         #启动定时器,定时器对象每隔一秒发射一个timeout信号
            self.isTimeStart=True
    
        def addtime(self):      #计时时间增一秒,并显示在QLable上
            self.timeClock=self.timeClock.addMSecs(1000)   #时间增加一秒
            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())
  • 相关阅读:
    面试准备
    spring常用注解
    lambda函数式编程
    java异常——Exception、RuntimException
    java异常——五个关键字(try、catch、finally、throw、throws)
    java中四种修饰符(private、default、protected、public)的访问权限
    海康威视c++实习生面试资料
    面经-字节跳动-web后端开发实习生(一面凉经)
    知识点汇总-软件工程导论
    知识点汇总-数据库原理
  • 原文地址:https://www.cnblogs.com/juan-F/p/9475723.html
Copyright © 2011-2022 走看看