我的目标是在按下按钮时播放gif,但由于某种原因它不起作用。我认为值得一提的是,该按钮可以使self.movie.stop()
停止动画,但是对于self.movie.start()
则完全不起作用,我确信该按钮确实会调用该函数,因为print语句是我已经放入,但self.movie.start()
不起作用
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QPushButton
from PyQt5.QtCore import Qt, QTimer, QSize
from PyQt5.QtGui import QMovie
class APP(QWidget):
def __init__(self):
super().__init__()
self.setStyleSheet("background-color: white;")
self.setGeometry(0, 0, 300, 300)
self.movie = QMovie(r'C:\Users\Name\Desktop\Desktop\de.gif')
self.movie.setScaledSize(QSize(300,225))
self.btn = QPushButton(self)
self.btn.clicked.connect(self.strt)
self.btn.setGeometry(100,130,150,50)
self.label = QLabel(self)
self.label.setMovie(self.movie)
self.show()
def strt(self):
print("Button pressed")
self.movie.start()
app = QApplication(sys.argv)
demo = APP()
app.exit(app.exec())