zoukankan      html  css  js  c++  java
  • pyqt5学习之QTimer

    QTimer常用的方法:

    常用的方法:start(milliseconds):启动或重新启动定时器,时间间隔为毫秒,如果定时器已经运行,他将停止并重新启动,如果singleSlot信号为真,定时器仅被激活一次

                stop():停止定时器

    常用的信号:singleshot():在给定的时间间隔后调用一个槽函数时发射此信号

                timeout():当定时器超时时发射此信号

    该实例主要验证定时器信号在时间间隔时会不会影响程序其他代码的运行

    from PyQt5.Qt import *
    from PyQt5.QtCore import QTimer
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super(Window, self).__init__()
            self.setWindowTitle('定时器')
            self.resize(500,500)
            self.move(500,500)
            self.setup_ui()
    
        def setup_ui(self):
            # 步骤1:设定一个定时器
            self.timer = QTimer(self)
            # 步骤2:将定时器信号和槽函数连接起来
            self.timer.timeout.connect(self.cao)
            # 步骤3:设置定时时间,单位毫秒,间隔设定时间运行程序
            self.timer.start(1000)
            # 使用按钮信号的目的是验证当定时器运行时,会不会影响其他操作
            # 经验证不会影响按钮信号的发送和对应的按钮槽函数运行
            self.btn=QPushButton(self)
            self.btn.setText('按钮')
            self.btn.resize(50,50)
            self.btn.move(50,50)
            self.btn.clicked.connect(self.cao1)
    
        def cao(self):
            print(1)
    
        def cao1(self):
            print(2)
    
    if __name__ == '__main__':
    
        app = QApplication(sys.argv)
        window = Window()
        window.show()
        sys.exit(app.exec_())
    定时器实例

    小结

    1. QTimer定时器会根据设定的时间不断发出timeout信号并调用连接的槽函数,通过start(int)方法来设置时间并启动定时器,stop()方法用于停止定时器;

    2. 通过isActive()方法来判断定时器是否被激活,setSingleShot()方法可以在触发timeout信号后只调用一次槽函数;

  • 相关阅读:
    译:编程面试的10大算法概念汇总
    Android内存优化之封装九宫格
    Android Java 程序员必备开发工具
    译:如何成为一个通晓多种编程语言的程序员
    8大排序算法图文讲解
    Android酷炫实用的开源框架(UI框架)
    Android动态加载字节码
    利用无效字节码指令引发逆向工具崩溃(二)
    oracle 12c linux服务器启动监听
    oracle无主键去重方法
  • 原文地址:https://www.cnblogs.com/mosewumo/p/12469055.html
Copyright © 2011-2022 走看看