Python pyqt启动计时器仅一次

Python pyqt启动计时器仅一次,python,timer,pyqt,pyqt5,Python,Timer,Pyqt,Pyqt5,如果时间到了,是否可以只启动Qtimer一次 self.timer = QtCore.QTimer() self.timer.setInterval(10000) self.timer.start(800) # start only once, not every 800 milliseconds self.timer.timeout.connect(self.function) 为此,必须启用该属性: self.timer = QtCore.QTimer() self.timer.setS

如果时间到了,是否可以只启动Qtimer一次

self.timer = QtCore.QTimer()
self.timer.setInterval(10000)
self.timer.start(800)  # start only once, not every 800 milliseconds
self.timer.timeout.connect(self.function)

为此,必须启用该属性:

self.timer = QtCore.QTimer()
self.timer.setSingleShot(True)
self.timer.setInterval(800)

self.timer.timeout.connect(self.function)

self.timer.start()


除了eyllanesc提到的signleShot方法, 你可以在self.function中停止计时器

def function(self):
    self.timer.stop()
def function(self):
    self.timer.stop()