PySide2之QSplashScreen

1.介紹QSplashScreen

QSplashScreen可以在軟件啓動前的顯示一個啓動界面,類似效果可以在很多軟件中看到:我們點擊軟件啓動,首先出現的不是軟件界面,而是一個啓動界面,這個啓動界面帶有一個背景圖片,同時有一個進度條來顯示軟件的啓動進度。QSplashScreen就是用來實現這樣的啓動界面,在軟件需要啓動較多模塊,避免用戶不明原因等待,使用QSplashScreen實現啓動界面是非常好的方法。

2.代碼示例

from PySide2.QtWidgets import QApplication, QSplashScreen
import sys
if __name__ == "__main__":
      
    AppByPyside2 = QApplication(sys.argv)
    # 2.1 顯示啓動界面
    splashScreen = QSplashScreen()
    splashScreen.show()
    AppByPyside2.processEvents()
    # 2.2 加載模塊,並更新啓動界面
    '''
    start module1
    set splashScreen 進度
    start module2
    set splashScreen 進入
    .......
    '''
    # 2.3 顯示主窗口    
    theMainWindow = MainWindow()
    theMainWindow.show()
    # 2.4 退出啓動界面
    splashScreen.finish(theMainWindow)
        
    AppByPyside2.exec_()

2.1theMainWindow是我們的主窗口,在主窗口顯示之前,我們建立一個QSplashScreen()實體splashScreen ,這裏沒有在splashScreen中添加任何內容,我們在應用時可以添加圖片、文字信息或進度條。使用show將splashScreen 顯示出來。

2.2在splashScreen顯示出來後,我們可以加載非界面模塊,這裏的模塊根據應用而定,在啓動界面我們可以看到加載的模塊信息或進度條。

2.3在非界面模塊加載完成後,我們需要顯示我們的主窗口theMainWindow,並顯示出來。

2.4最後splashScreen是需要自動消失的,它需要在主窗口全部加載完成後退出顯示, 使用splashScreen.finish可以實現。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章