pyqt5 -- 定时器

試著忘記壹切 提交于 2020-02-23 22:53:48
from PyQt5.Qt import *
import sys


class Mywidget(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('PyQt5--定时器')

        self.resize(500, 500)
        self.time_id = self.startTimer(1000)

    def timerEvent(self, eve):
        self.resize(self.width()+ 100, self.height()+100)

        if self.width() == 1000:
            self.killTimer(self.time_id)


class Mylabel(QLabel):
    def __init__(self, *args, **kwargs):        # 传递参数的意义,是为了让lable成为window的子控件
        super().__init__(*args, **kwargs)

        self.setText('10')
        self.move(200, 195)
        self.setStyleSheet('font-size: 43px;')
        self.time_id = self.startTimer(1000)        # 单独把time_id放在这里,就变成局部变量了,可以把他绑定到lable成为属性

    def timerEvent(self, eve):      # 如果有两个定时器,那如何编辑事件呢????????
        # print('xx')
        a = int(self.text())
        a = a - 1
        self.setText(str(a))
        if a == 0 :
            self.killTimer(self.time_id)
            self.setText('停止')


app = QApplication(sys.argv)

window = Mywidget()

label = Mylabel(window)

window.show()

sys.exit(app.exec_())

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!