MacOS 14 使用Pyside6 集成 QFluent-Widgets

1. 安装Conda

一路下一步即可,安装较慢,需要多等一会。

image.png
  • 打开终端验证安装结果

如果已经打开了终端,则需要退出重新打开,因为要重新加载一次conda的环境变量。

#查询信息,打印已经安装的包列表表示成功
conda list
# packages in environment at /Users/zhaowenwen/anaconda3:
#
# Name                    Version                   Build  Channel
_anaconda_depends         2023.09         py311_openblas_1
abseil-cpp                20211102.0           he9d5cce_0
...

2. 打开Pycharm创建项目

image.png
  • 确认环境没有问题并可以正常运行


    image.png

3. 安装QFluent-Widgets

版本变动时 参考QFluent-Widgets官方文档

  • 安装完整版

在Idea自带的终端窗口执行,默认会是当前环境,不用单独安装Pyside6

pip install "PySide6-Fluent-Widgets[full]"
image.png
  • 首先使用Pyside6写个简单的页面测试是否正常。
import sys

from PySide6 import QtCore
from PySide6.QtWidgets import QApplication, QLabel, QMainWindow

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

    window = QMainWindow()

    window.setWindowTitle("Hello World App")
    window.setGeometry(100, 100, 400, 200)  # Set the window size

    hello_label = QLabel("Hello, World!")

    hello_label.setAlignment(QtCore.Qt.AlignCenter)

    window.setCentralWidget(hello_label)

    window.show()

    sys.exit(app.exec())

运行结果

image.png

4. 配置页面设计器

需要配置QFluent-Widgets的页面设计器才能看到漂亮的控件, Pyside6的设计器没法和QFluent-Widgets兼容,使用的逻辑是在虚拟环境安装pyqt5的环境和pyqt5tool来启动QFluent-Widgets的设计器。

  • 打开终端创建一个虚拟环境用来启动设计器(设计器需要pyqt5)
conda create --name qt_designer python=3.8
  • 激活环境
conda activate qt_designer
  • 下载启动器
git clone 'https://github.com/zhiyiYo/PyQt-Fluent-Widgets.git'
  • 安装pyqt5-toolsPyQt-Fluent-Widgets来启动设计器
pip install PyQt-Fluent-Widgets
pip install pyqt5-tools
  • 启动工具

执行刚才clone的项目目录下的PyQt-Fluent-Widgets/tools/designer.py

python ./PyQt-Fluent-Widgets/tools/designer.py
  • 随便拖两个控件 并保存ui文件到项目根目录下


    image.png
image.png
  • 配置ui转py工具


    image.png
5: -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
6: $FileDir$
  • 把UI文件转为py文件


    image.png
image.png
  • 修改代码加载刚才的UI文件
import sys

from PySide6.QtWidgets import QApplication, QMainWindow

from ui import Ui_MainWindow

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

    window = QMainWindow()

    ui = Ui_MainWindow()

    ui.setupUi(window)

    window.show()

    sys.exit(app.exec())
  • 启动项目测试


    image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容