在使用Python+QT制作GUI界面时,首先会遇到大家比较像设置一个启动界面。在网上搜集了很多资料Python+QT制作GUI界面的相关资料,比较杂,会浪费很多时间,在本人项目中,用到的会在此公众号中记录分享。 函数介绍: PyQt中的QSplashScreen类提供了在程序启动过程中显示的启动画面的功能当运行程序时,在显示屏的中央出现一个启动画面,经过一段时间,应用程序完成初始化工作后,启动画面隐去,出现程序的主窗口界面的功能。 构造函数: QSplashScreen ([QPixmap pixmap] [,Qt.WindowFlags flags=0]) QSplashScreen (QWidget parent[,QPixmap pixmap] [,Qt.WindowFlags flags=0]) patent参数指定父组件; pixmap参数是QPixmap类的实例,用来指定显示在启动界面的图像; flags参数设为Qt.WindowStaysOnTopHint可用来将启动界面置顶。 方法: show():显示启动界面 finish (QWidget w):启动界面显示直至主窗口加载完成 showMessage (QString message, int alignment = Qt.AlignLeft, QColor color = Qt.black):在启动界面显示message字符串,字体颜色为color,对齐方式为alignment. clearMessage():清除showMessage()显示的字符串。 setPixmap (QPixmap pixmap):设置启动界面图像 pixmap():返回启动界面图像的QPixmap实例 废话不多说,直接上代码吧! import sys import time from PyQt5.QtWidgets import QApplication , QMainWindow from PyQt5 import QtCore, QtGui, QtWidgets from Ui_example import Ui_example1 #你懂得 classMyMainWindow(QMainWindow, Ui_example1): def__init__(self, parent=None): super(MyMainWindow, self).__init__(parent) self.setupUi(self) defload_data(self, sp):#启动界面时间 for i in range(1, 11): #模拟主程序加载过程 time.sleep(1) # 加载数据 启动时间调这参数 sp.showMessage("加载... {0}%".format(i * 10), QtCore.Qt.AlignHCenter |QtCore.Qt.AlignBottom, QtCore.Qt.black) QtWidgets.qApp.processEvents() # 允许主进程处理事件 if __name__=="__main__": app = QApplication(sys.argv) splash = QtWidgets.QSplashScreen(QtGui.QPixmap("GIF1.gif"))#图片文件 splash.showMessage("加载... 0%", QtCore.Qt.AlignHCenter | QtCore.Qt.AlignBottom, QtCore.Qt.black)#进度条 splash.show() # 显示启动界面 QtWidgets.qApp.processEvents() # 处理主进程事件 myWin = MyMainWindow() myWin.setWindowTitle("启动界面的示例")#设置启动界面完成后窗体名称 myWin.load_data(splash) myWin.show() splash.finish(myWin)#隐藏启动界面 sys.exit(app.exec_()) 发现很多示例都没运行图片,有些小白看起来比较迷茫,来两张图片。 ![]() ![]() ![]() 以上内容均为实现方法的一种,如有更好的可以沟通交流分享。 资料整理于网络: 本文所有内容均来自网络及教科书,我们对有价值的资源进行整理,分享给大家学习,寻找灵感。对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,并不对内容观点负责。版权属于原作者。 ---------------------------------------------------------------------------------------------------------------------- 我们尊重原创,也注重分享,文章来源于微信公众号:蒜苗设计小站,建议关注公众号查看原文。如若侵权请联系qter@qter.org。 ---------------------------------------------------------------------------------------------------------------------- |