怎么在PyQt5中利用QTimer实现一个电子时钟

  介绍

这篇文章给大家介绍怎么在PyQt5中利用QTimer实现一个电子时钟,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1,定时器信号/槽方式

class 定时器(QWidget):   def 才能;__init__(自我,,parent =, None):,,   ,,,#……   ,,,,   ,,,#新建一个QTimer对象,,,,   ,,,self.timer =, QTimer (),,,   ,,,self.timer.setInterval (1000),,,,   ,,,self.timer.start ()   ,,,,   ,,,#,信号连接到槽,,,,   ,,,self.timer.timeout.connect (self.onTimerOut)      #,才能定义槽   def 才能onTimerOut(自我):,,,,   ,,,self.lcd.display (time.strftime (“% X", time.localtime ()))

完整代码:

import 系统   import 时间   得到PyQt5.QtCore  import  *   得到PyQt5.QtGui  import  *   得到PyQt5.QtWidgets  import  *      class 定时器(QWidget):   def 才能;__init__(自我,,parent =,无):   ,,,超级(定时器,,自我). __init__(父),,,   ,,,self.resize (200,, 100),,,   ,,,self.setWindowTitle (“QTimerDemo")   ,,,,   ,,,self.lcd =, QLCDNumber (),,,   ,,,self.lcd.setDigitCount (10),,,   ,,,self.lcd.setMode (QLCDNumber.Dec)   ,,,self.lcd.setSegmentStyle (QLCDNumber.Flat)   ,,,self.lcd.display (time.strftime (“% X", time.localtime ()))      ,,,layout =, QVBoxLayout ()   ,,,layout.addWidget (self.lcd),,,,   ,,,self.setLayout(布局)   ,,,,   ,,,#新建一个QTimer对象,,,,   ,,,self.timer =, QTimer (),,,   ,,,self.timer.setInterval (1000),,,,   ,,,self.timer.start ()   ,,,,   ,,,#,信号连接到槽,,,,   ,,,self.timer.timeout.connect (self.onTimerOut)      #,才能定义槽   def 才能onTimerOut(自我):,,,,   ,,,self.lcd.display (time.strftime (“% X", time.localtime ()))         ,,,,   时间=app  QApplication (sys.argv)   时间=t 定时器()   t.show ()   sys.exit (app.exec_ ())

2,定时器事件方式

class 定时器(QWidget):   def 才能;__init__(自我,,parent =,无):   ,,,#……   ,,,,   ,,,#新建一个QTimer对象,,,,   ,,,self.timer =, QBasicTimer (), #, QTimer()貌似不行,不知何故吗?   ,,,self.timer.start(1000年,自我),   ,,   #,才能覆写计时器事件处理函数timerEvent ()   def 才能timerEvent(自我,事件):   ,,,self.lcd.display (time.strftime (“% X", time.localtime ()))

完整代码:

import 系统   import 时间   得到PyQt5.QtCore  import  *   得到PyQt5.QtGui  import  *   得到PyQt5.QtWidgets  import  *      class 定时器(QWidget):   def 才能;__init__(自我,,parent =,无):   ,,,超级(定时器,,自我). __init__(父),,,   ,,,self.resize (200,, 100),,,   ,,,self.setWindowTitle (“QTimerDemo")   ,,,,   ,,,self.lcd =, QLCDNumber (),,,   ,,,self.lcd.setDigitCount (10),,,   ,,,self.lcd.setMode (QLCDNumber.Dec)   ,,,self.lcd.setSegmentStyle (QLCDNumber.Flat)   ,,,self.lcd.display (time.strftime (“% X", time.localtime ()))      ,,,layout =, QVBoxLayout ()   ,,,layout.addWidget (self.lcd),,,,   ,,,self.setLayout(布局)   ,,,,   ,,,#新建一个QTimer对象,,,,   ,,,self.timer =, QBasicTimer (), #, QTimer()貌似不行,不知何故吗?   ,,,self.timer.start(1000年,自我),   ,,   #,才能覆写计时器事件处理函数timerEvent ()   def 才能timerEvent(自我,事件):   ,,,if  event.timerId (),==, self.timer.timerId ():   ,,,,,self.lcd.display (time.strftime (“% X", time.localtime ()))   ,,,:   ,,,,,超级(WigglyWidget,,自我).timerEvent(事件)      null   null   null   null   null

怎么在PyQt5中利用QTimer实现一个电子时钟