前言

Pyside6是Qt6对应的官方python库,官方有较全面的使用文档:https://doc.qt.io/qtforpython/contents.html
本文使用Python3.7版本,从头安装使用Pyside6。

安装

python版安装只需要一句命令即可:

pip install pyside6

安装包有点大,建议手动下载whl直接安装。
安装后会多两个库:PySide6和shiboken。
在Python环境下的Scripts文件夹下还会多出pyside6-designer.exepyside6-uic.exe等几个exe程序。

界面设计工具设置

打开pyside6-designer.exe,是qt的界面设计程序,可以拖拽设计界面并保存为ui文件。
使用pyside6-uic.exe,通过以下程序命令可以将ui文件转成py文件。

pyside6-uic.exe ui_mainwindow.ui -o ui_mainwindow.py

如果用的是Pycharm,可以添加右键工具直接在文件右键快速打开,添加工具的方法参考以下文章。

初始代码

参考官方文档:https://doc.qt.io/qtforpython/tutorials/basictutorial/uifiles.html

直接使用ui文件

import sys
from PySide6.QtUiTools import QUiLoader
from PySide6.QtWidgets import QApplication
from PySide6.QtCore import QFile, QIODevice

if __name__ == "__main__":
    app = QApplication(sys.argv)

    ui_file_name = "mainwindow.ui"
    ui_file = QFile(ui_file_name)
    if not ui_file.open(QIODevice.ReadOnly):
        print(f"Cannot open {ui_file_name}: {ui_file.errorString()}")
        sys.exit(-1)
    loader = QUiLoader()
    window = loader.load(ui_file)
    ui_file.close()
    if not window:
        print(loader.errorString())
        sys.exit(-1)
    window.show()

    sys.exit(app.exec())

转成py文件再加载

import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from PySide6.QtCore import QFile
from ui_mainwindow import Ui_MainWindow

class MainWindow(QMainWindow):
    def __init__(self):
        super(MainWindow, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)

if __name__ == "__main__":
    app = QApplication(sys.argv)

    window = MainWindow()
    window.show()

    sys.exit(app.exec())

建议转成py文件再打开,感觉IDE提示更准确,不过直接加载更方便就是了。

打包

打包建议使用auto-py-to-exe,这是一个基于pyinstaller的带Ui界面的打包程序,对新手极其友好。
使用以下命令安装:

pip install auto-py-to-exe

通过以下命令启动程序:

auto-py-to-exe
最后修改:2022 年 01 月 05 日
你的赞赏是我前进的动力