@[toc]pyqt进行封装程序为exe文件
pyqt进行封装程序为exe文件
将 PyQt 程序打包为可执行文件(.exe)可以使用 PyInstaller 工具。PyInstaller 是一个流行的 Python 打包工具,能够将 Python 脚本及其依赖项打包为独立的可执行文件。以下是详细步骤:
1.安装 PyInstaller
首先,确保你已经安装了 PyInstaller。如果没有安装,可以使用 pip 安装:
pip install pyinstaller
2. 编写 PyQt 程序
假设你的 PyQt 程序文件名为 my_app.py,内容如下:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("My PyQt App")
self.setGeometry(100, 100, 300, 200)
button = QPushButton("Click Me", self)
button.setGeometry(100, 50, 100, 30)
button.clicked.connect(self.on_button_click)
def on_button_click(self):
print("Button clicked!")
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
3. 使用 PyInstaller 打包程序
在命令行中运行以下命令,将 my_app.py 打包为 .exe 文件:
pyinstaller --onefile --windowed my_app.py
参数说明:
–onefile:将所有文件打包为一个单独的 .exe 文件。
–windowed:禁止显示命令行窗口(适用于 GUI 程序)。
my_app.py:你的 PyQt 程序入口文件。
4. 查找生成的 .exe 文件
打包完成后,生成的 .exe 文件会位于 dist 目录中。例如:
dist/
my_app.exe
可以直接运行 my_app.exe。
添加图标
1.在程序中加载图标
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton
from PyQt5.QtGui import QIcon
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("My PyQt App")
self.setGeometry(100, 100, 300, 200)
self.setWindowIcon(QIcon('icon.png')) # 加载图标文件
button = QPushButton("Click Me", self)
button.setGeometry(100, 50, 100, 30)
button.clicked.connect(self.on_button_click)
def on_button_click(self):
print("Button clicked!")
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
2.将图标文件放在与主程序同一目录下进行打包
3.打包程序
pyinstaller --onefile --windowed my_app.py