
大家好,又见面了,我是你们的朋友全栈君。
首先要创建一个项目,创建项目的同时,pycharm默认会顺带创建一个虚拟环境(如果你没修改默认配置的话)。
点击终端,如果前面有个(venv)就是使用的虚拟环境了。

接下来我们安装pyside6,在终端中输入并执行以下命令:
pip install pyside6安装完成后配置拓展工具,需要用到的2个工具是 pyside6-uic 和 pyside6-designer
pyside6-designer 是调用 pyside6 模块内附带的 qtdesigner
在Linux中其位于 venv/bin/pyside6-designer
在Windows中其位于 venv\Scripts\pyside6-designer.exe
pyside6-uic 是用于将设计好的用户界面文件 .ui文件转化为 .py文件
在Linux中其位于 venv/bin/pyside6-uic
在Windows中其位于 venv\Scripts\pyside6-uic.exe
转到 File > Settings > tools > PyCharm External Tools
点击 + 创建新的外部工具。

pyside6-uic 工具
名称:pyside6-uic
程序:ProjectFileDir/venv/bin/pyside6-uic
参数:FileName -o ui_FileNameWithoutExtension.py
工作目录:FileDir

pyside6-designer 工具
名称:pyside6-designer
程序:ProjectFileDir/venv/bin/pyside6-designer
工作目录:FileDir

pyside6-uic 工具
名称:pyside6-uic
程序:ProjectFileDir\venv\Scripts\pyside6-uic.exe
参数:FileName -o ui_FileNameWithoutExtension.py
工作目录:FileDir

pyside6-designer 工具
名称:pyside6-designer
程序:ProjectFileDir\venv\Scripts\pyside6-designer.exe
工作目录:FileDir

测试的话,自己在项目内右键 External Tools > pyside6-designer 打开 designer 创建一个 .ui 文件,再回来Pycharm,选中 .ui 文件,右键 External Tools > pyside6-uic 将 .ui 文件编译为Python的 .py 文件。
都成功的话,就是配置好了。
使用虚拟环境的话,是每个项目都要安装一次PySide6的(除非你在真实环境安装了PySide6,并在虚拟环境继承真实环境的包,不过只要你没删pip的下载缓存,就是安装下而已,不用重新下载),但如果你没把虚拟环境的名字(venv)给改了,拓展工具的配置是一直可以用的,不用修改。
如果你使用的是真实的Python环境
Linux
非sudo权限pip安装的PySide6:uic 和 designer 的位置在 ~/.local/bin
sudo权限pip安装的PySide6:uic 和 designer 的位置在 /usr/local/bin
Windows
在cmd中输入 where python,复制第一行路径带 Programs 的内容,复制到 python.exe 之前,C:\Users\nexfia\AppData\Local\Programs\Python\Python39

在复制的路径后面加 \Scripts 就是 uic 和 designer 的位置,即 uic 和 designer 的位置为C:\Users\nexfia\AppData\Local\Programs\Python\Python39\Scripts
问题:能不能使用 pyqt5 或者 pyside2 附带的pyside6-uic 和 pyside6-designer?
我是不建议使用的。
一是因为底层的qt版本对不上,这两个是基于qt5甚至是qt4的,而PySide6是基于qt6的。
二是不同模块的uic编译出来的东西不一定兼容,以pyside2为例,pyside2有一些东西在PySide6被废弃了,换成了一些新的,你用pyside2的uic编译出来的Python文件在PySide6上运行会出错,而且编译出来的Python文件导入的包都不一样。
所以,如果你同时安装了 pyqt5 、 pyside2 或 PySide6 的话,拓展工具记得加上模块名方便区别,比如:pyside6-designer
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/175488.html原文链接:https://javaforall.cn