pyqt添加启动等待界面的操作

 更新时间:2021年03月17日 10:42:09   作者:“人生苦短”  
这篇文章主要介绍了pyqt添加启动等待界面的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一、实验环境

1.Windows7x64_SP1

2.anaconda3.7 + python3.7(anaconda集成,不需单独安装)

3.pyinstaller3.5 #使用pyinstaller3.0,打包时报错

二、实验步骤

1.resource.qrc文件中添加图片资源

<RCC>
 <qresource>
  <file alias="contacts.png">ico/contacts.png</file>
  <file alias="exit.png">ico/exit.png</file>
  <file alias="about.png">ico/about.png</file>
  <file alias="config.png">ico/config.png</file>
  <file alias="help.png">ico/help.png</file>
  <file alias="xel.png">ico/xel.png</file>
  <file alias="xel_small.png">ico/xel_small.png</file>
  <file alias="magnifier.png">ico/magnifier.png</file>
  <file alias="wait.png">ico/wait.png</file>
 </qresource>
</RCC>

2.使用pyrcc5生成最新的resource.py文件,命令参考如下:

pyrcc5 -o resource.py resource.qrc

3.更改程序主文件

# -*- coding: utf-8 -*-
import os,sys,time,re
from PyQt5.QtWidgets import QMainWindow,QMessageBox
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import QApplication,QDialog,QSplashScreen
from PyQt5 import QtCore,QtGui
from untitled import Ui_MainWindow
 
if __name__ == '__main__':
  app = QApplication(sys.argv)
  splash = QSplashScreen(QtGui.QPixmap(":/wait.png"))   # 启动界面图片地址
  splash.show()                      # 展示启动图片
  app.processEvents()                   # 防止进程卡死
  icon = QtGui.QIcon()
  icon.addPixmap(QtGui.QPixmap(":/magnifier.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
  tool = SmartBit_Tool()
  tool.setWindowIcon(icon)
  tool.show()
  splash.finish(tool)                   # 关闭启动界面
  sys.exit(app.exec_())

4.运行结果

运行exe文件发现,从双击exe文件至弹出启动界面图片,还是存在一定的延时!如何缩短这个延时,还需要继续研究,知道的童鞋也请告知!

5.提升运行速度

代码中不用的库,删除其导入语句

尽量使用from xxx import xxx,少用from xxx import *

使用pyinstaller打包文件,打包为一个文件夹

补充:PyQt5启动画面——等待程序启动不用干瞪眼

PyQt的启动画面可以通过QSplashScreen类来快捷制作,支持透明图片

import sys
from PyQt5 import QtWidgets, QtGui
# 对Qt部件的操作一般都要在创建Qt程序后才能进行
app = QtWidgets.QApplication(sys.argv) 
# 创建启动界面,支持png透明图片
splash = QtWidgets.QSplashScreen(QtGui.QPixmap('splash.png'))
splash.show()
# 可以显示启动信息
splash.showMessage('正在加载……')
# 关闭启动画面
splash.close() 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • python爬虫之urllib库常用方法用法总结大全

    python爬虫之urllib库常用方法用法总结大全

    urllib是python自带的请求库,各种功能相比较之下也是比较完备的,下面这篇文章主要给大家介绍了关于python爬虫之urllib库常用方法用法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-11-11
  • python实现本地批量ping多个IP的方法示例

    python实现本地批量ping多个IP的方法示例

    这篇文章主要介绍了python实现本地批量ping多个IP的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • tensorflow TFRecords文件的生成和读取的方法

    tensorflow TFRecords文件的生成和读取的方法

    本篇文章主要介绍了tensorflow TFRecords文件的生成和读取的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Python利用Rows快速操作csv文件

    Python利用Rows快速操作csv文件

    Rows 是一个专门用于操作表格的第三方Python模块。只要通过 Rows 读取 csv 文件,她就能生成可以被计算的 Python 对象。本文将通过示例为大家详细讲讲Python如何利用Rows快速操作csv文件,需要的可以参考一下
    2022-09-09
  • Python提取Pdf文件内容的操作方法(表格、文本、图片)

    Python提取Pdf文件内容的操作方法(表格、文本、图片)

    本文主要介绍了Python提取PDF内容的方法(文本、图像、表格),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • Python编程中类与类的关系详解

    Python编程中类与类的关系详解

    在本文里小编给大家整理了关于Python编程中类与类的关系以及相关代码知识点,需要的朋友们可以学习下。
    2019-08-08
  • Python 迭代器与生成器实例详解

    Python 迭代器与生成器实例详解

    这篇文章主要介绍了Python 迭代器与生成器实例详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • Python 装饰器代码解析

    Python 装饰器代码解析

    装饰器(Decorators)是 Python 的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic(Python范儿)。大多数初学者不知道在哪儿使用它们,所以我将要分享几个示例
    2021-11-11
  • python3使用pandas获取股票数据的方法

    python3使用pandas获取股票数据的方法

    今天小编就为大家分享一篇python3使用pandas获取股票数据的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python+QTimer计时器实现摄像头视频的播放和暂停

    Python+QTimer计时器实现摄像头视频的播放和暂停

    这篇文章主要为大家详细介绍了Python如何通过QTimer计时器实现摄像头视频的播放和暂停功能,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-11-11

最新评论