主要关注于打包桌面程序
PyQt5一些教程
安装必要的库:
import os
pack_list = [
"PyQT5",
"pandas==1.5.3",
"pyinstaller==6.6.0",
"openpyxl==3.1.2",
"pyqt5-tools",
]
# set DS_BUILD_AIO=0
# set DS_BUILD_SPARSE_ATTN=0
for packa in pack_list:
# os.system("pip install " + packa + " -i https://pypi.tuna.tsinghua.edu.cn/simple")
os.system("pip install " + packa + " -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com")
可以用designer创建UI界面,总之创建好之后就下一步。
按钮绑定函数
假如界面的里面有如下函数:
# 按钮
self.CalcButton1 = QtWidgets.QPushButton(Dialog)
self.CalcButton1.setGeometry(QtCore.QRect(50, 350, 101, 31))
font = QtGui.QFont()
font.setFamily("Adobe Devanagari")
font.setPointSize(9)
self.CalcButton1.setFont(font)
self.CalcButton1.setObjectName("CalcButton1")
在启动类可以通过如下方法绑定:
def __init__(self):
super(Main, self).__init__()
self.setupUi(self) # 1
self.CalcButton2.clicked.connect(self.calc_inbrcoef)
def calc_corrcoef(self):
pass
打包exe文件
在命令行先创建spec文件
> pyinstaller -i logo.ico desktopui.py
其中图标可以通过下面代码获得:
from PIL import Image
def png2ico():
img = Image.open(r"./softwarelogo.png")
# icon_sizes = [(16, 16), (32, 32), (48, 48), (64, 64)]
icon_sizes = [(64, 64)]
img.save('logo.ico', sizes=icon_sizes)
关于spec文件
只生成了如下内容:
a = Analysis(
['desktopui.py',]
需要自己把整个工程下所有用到的代码都写进去,同’desktopui.py’目录的相对路径即可(直接写文件名),有其他目录子目录下的文件写绝对路径。
然后
>pyinstaller desktopui.spec
然后在dist目录下找到exe文件即可。
end