【发布时间】:2018-06-16 16:27:54
【问题描述】:
我正在使用 ffmpeg 在 pyside 中实现一个电影播放器。将帧发送到 QImage 缓冲区一切正常,我可以使用 python timer() 函数停止和启动 OK 来控制播放速率,除非我不知道如何暂停。 即暂停按钮是一个两态按钮,根据连续点击时按钮的状态,播放或暂停。
我设置了按钮:
self.pauseButton = QToolButton()
self.pauseButton.setCheckable(True)
然后,我认为 isDown() 方法将确定按钮是处于向上还是向下状态,然后向我在其他地方定义的 timer() 函数发送信号。停止和播放按钮可以启动和停止计时器和图像流,但此暂停功能仅暂停:
if self.pauseButton.isDown():
self.pauseButton.clicked.connect(lambda: self.timer.start()))
else:
self.pauseButton.clicked.connect(lambda: self.timer.stop())
我哪里错了? PySide 可以检测 QPushButton 状态还是我需要使用按钮计数器方法或类似方法实现单独的事件过滤器?
干杯!
【问题讨论】:
标签: video timer pyqt5 pyside qpushbutton