Pyqt5第一个窗口之定时器事件

Pyqt5第一个窗口之定时器事件

一,简介
本次我们的程序完成一个定时的任务,等到时间自动停止任务。
二,代码如下:

from PyQt5.Qt import *
import sys


class Label(QLabel):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.resize(80, 40)
        self.move(100, 100)
        self.setText('10')
        self.setStyleSheet("background-color:#02CDB9;font-size:25px")

    def timerEvent(self, *args, **kwargs):  # 重写timerEvent事件
        print('事件进行中')
        # 获取text中的值
        text = int(self.text())
        # 倒计时-1
        text -= 1
        self.setText(str(text))
        # 停止到计时
        if text == 0:
            self.killTimer(timer_id)  # kiil定时器,timer_id定时器id
            print("事件停止")


if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    window.resize(800, 500)
    label = Label(window)
    timer_id = label.startTimer(1000)  # 设置一个定时器,没1000毫秒执行一次
    window.show()
    sys.exit(app.exec_())

你可能感兴趣的:(Pyqt5,python,pyqt5)