【发布时间】:2014-03-15 12:25:45
【问题描述】:
我是使用 pyqt 进行 gui 设计的新手。 我想在启动画面中使用 gif .. 使用此代码..
from PyQt4.QtCore import *
from PyQt4.QtGui import *
class Form(QDialog):
def __init__(self, parent=None):
super(Form, self).__init__(parent)
self.browser = QTextBrowser()
self.setWindowTitle('Just a dialog')
if __name__ == "__main__":
import sys, time
app = QApplication(sys.argv)
# Create and display the splash screen
splash_pix = QPixmap('a.gif')
splash = QSplashScreen(splash_pix, Qt.WindowStaysOnTopHint)
splash.setMask(splash_pix.mask())
#splash.raise_()
splash.show()
app.processEvents()
# Simulate something that takes time
time.sleep(2)
form = Form()
form.show()
splash.finish(form)
app.exec_()
但是我只得到了 gif 的第一帧...我该如何克服这个...?
【问题讨论】:
-
这可能会有所帮助。他们使用 QLabel 和 QMovie。 stackoverflow.com/questions/10261265/…
-
@wbt11a 该链接用于在应用程序中显示 .gif .. 但我想将该 .gif 添加到启动画面,我无法将 QLabel 或 QMovie 添加到启动画面屏幕
-
@Srinath。使用
QPixmap动画 gif 根本不起作用 - 它只能显示静态内容,这就是为什么您只能看到第一帧的原因。因此,您要么必须循环显示一系列图像,要么使用可以显示动态内容的小部件,例如QMovie。
标签: python user-interface pyqt4 splash-screen