*PyQt4 精彩实例分析* 实例23 程序启动画面

来源:互联网 发布:怎样利用网络挣钱 编辑:程序博客网 时间:2024/05/01 02:11

多大数应用程序启动时都会在程序完全启动时显示一个启动画面,在程序完全启动后消失。程序启动画面可以显示一些有关产品的信息,让用户在等待程序启动的同时了解有关产品的功能,也是一个宣传的方式。

QSplashScreen类提供了在程序启动过程中显示的启动画面的功能。本实例实现一个出现程序启动画面的例子。

当运行程序时,在显示屏的中央出现一个启动画面,经过一段时间,应用程序完成初始化工作后,启动画面隐去,出现程序的主窗口界面,如下图所示。

具体实现代码如下:

[python] view plaincopy
  1. from PyQt4.QtGui import *  
  2. from PyQt4.QtCore import *  
  3. import sys  
  4.   
  5. class MainWindow(QMainWindow):  
  6.     def __init__(self,parent=None):  
  7.         super(MainWindow,self).__init__(parent)  
  8.         self.setWindowTitle("Splash Example")  
  9.         edit=QTextEdit()  
  10.         edit.setText("Splash Example")  
  11.         self.setCentralWidget(edit)  
  12.   
  13.         self.resize(600,450)  
  14.   
  15.         QThread.sleep(3)  
  16.           
  17. app=QApplication(sys.argv)  
  18.   
  19. splash=QSplashScreen(QPixmap("image/23.png"))  
  20. splash.show()  
  21. app.processEvents()  
  22. window=MainWindow()  
  23. window.show()  
  24. splash.finish(window)  
  25.   
  26. app.exec_()  

第19行利用QPixmap对象创建一个QSplashScreen对象。

第20行调用show()函数显示此启动图片。

第21行调用processEvents()使程序在显示启动画面的同时仍能响应鼠标等其他事件。

第22,23行正常创建主窗体对象,并调用show()函数显示。

第24行调用QSplashScreen类的finish()函数,表示在主窗体对象初始化完成后,结束启动画面。

第26行正常地调用exec_()函数。

由于启动画面一般在当程序初始化时间较长的情况下出现,本实例中为了使程序初始化时间加长以显示启动画面,在主窗体的构造函数中调用QThread.sleep()函数,使主窗口程序在初始化时休眠几秒钟。

 

 

注:本文基本上是经过改编的《Linux窗口程序设计--Qt4精彩实例分析》一书的PyQt4 for windows版本

转自:http://blog.csdn.net/chumpklutz/article/details/6101301

原创粉丝点击