python pyqt5从环境配置到界面设计再到exe程序发布详细过程
基本操作:
一、开发环境配置
- 安装好pycharm(没用过的自行百度安装)
- 安装好pyqt5
- 配置外部工具(External Tools)
这里有三个工具需要配置如下图,配置参数直接截图显示。
我这里Qt designer的路径为“C:\Users\shegu\AppData\Local\Programs\Python\Python37-32\Scripts\designer.exe”
二、创建新项目,这里要用虚拟环境(与其他程序隔离开,这里只安装此程序需要的包)
鼠标点到“pyqt5演示”这个文件夹,然后右键选择“外部工具”中的Qt designer,然后新建一个主窗口
拖动一个textBrowser和pushButton到窗口,然后保存关闭。
这里就有了我们的文件了,名字自己取,如果没有后缀,自己加个.ui
然后使用前面配置的工具“pyuic5”进行转换,转换完了就有个对应名字的.py文件
接下来,新建一个主程序文件,自己命名
接下来在主程序里面写入下面的代码
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog
from pyqt5演示 import * # 这里pyqt5演示 就是UI生成的文件名称
class MyMainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MyMainWindow, self).__init__(parent)
self.setupUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainWindow()
myWin.show()
sys.exit(app.exec_())
然后在run_pyqt5演示中右键点击运行脚本,出现如下报错信息,这是因为我们的虚拟环境并没有安装pyqt5这个包
接下来我们去此项目环境中安装pyqt5包
点击右侧的“+”加号,进行包的安装
搜索pyqt5,找到包,然后点下方的“安装包”。
安装好后就成了这样
接着安装pyqt5-stubs这个包
再次右键运行主程序就出现了界面了。
然后我们开始写业务代码,整个简单需求当点击pushButton按钮后,读取指定txt文件中的数据显示在界面框textBrowser中。
先在项目文件夹中新建一个txt文件,写下点内容
然后运行一下主程序,点击按钮,发现能够成功实现效果。
这样基础功能就做好了。
三、打包exe程序
先安装pyinstaller包,这个就直接cmd+pip安装 pip3 install pyinstaller
安装好了后,这里要去调整一下主程序,目前我们的主程序是不包括“pyqt5演示.py”的,它里面的内容我们是通过导包过来了,
开发调试阶段这么做可以很好的把业务和UI分开。这里要打包exe了就不行了。
这里我们直接把“pyqt5演示.py”里面的代码复制过来,然后粘贴到下图位置。
然后注释掉前面的导UI包代码
然后我们再测试一下主程序,还是OK的。接下我们直接打包exe。
这里直接通过pycharm软件操作cmd到指定文件夹路径
输入下面的代码,关于pyinstaller相关参数如下图,
建议调试的时候不用-w,然后通过控制台启动生成的exe程序,可以看到报错信息有助于调试。
显示打包exe成功。
exe文件生成位置在dist文件夹下,
这里采用控制台方式启动这个程序测试,一样的选中程序,右键,在终端打开
然后输入程序名称直接回车
程序出现闪退,这里没有看到错误信息,后面研究发现,错误的原因是找不到“测试数据.txt”文件
把数据文件复制到exe文件一个文件夹下,运行程序,成功。
版权声明:内容来源于互联网和用户投稿 如有侵权请联系删除