PySide6使用指南——安装和配置
安装
如果你使用Pycharm开发,该步骤可以跳过。PyCharm可以只把PySide6安装在项目中,而非全局。
在命令行输入以下内容:
pip install pyside6
如果该方法安装缓慢,可以在后面加上来源参数:
pip install pyside6 http://mirrors.aliyun.com/pypi/simple/
可以把网址改成以下内容:
- 阿里云:http://mirrors.aliyun.com/pypi/simple/
- 中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/
- 豆瓣:http://pypi.douban.com/simple/
- 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
- 中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple/
更多更改pip3源的方法,可以点击这里查看。
配置
VSCode
在vscode中使用Pyside6,我们需要先安装插件Qt for Python:
安装好插件后,我们需要在设置中对该插件进行配置。
首先我们得先找到安装的Pyside6的位置,一般在Python安装路径下,我的是D:\Python\Python310\Lib\site-packages\PySide6
文件夹下。
然后,打开vscode的设置界面,找到扩展 > Qt for Python,分别填写Designer:Path
、Qmllint: Path
、Rcc: Path
和Uic: Path
。
或者点击设置界面右上角的打开设置(json),在末尾里面添加以下内容:
"qtForPython.designer.path": "D:\\Python\\Python310\\Lib\\site-packages\\PySide6\\designer.exe",
"qtForPython.rcc.path": "D:\\Python\\Python310\\Lib\\site-packages\\PySide6\\rcc.exe",
"qtForPython.uic.path": "D:\\Python\\Python310\\Lib\\site-packages\\PySide6\\uic.exe",
"qtForPython.qmllint.path": "D:\\Python\\Python310\\Lib\\site-packages\\PySide6\\qmllint.exe"
我们可以使用以下代码验证以下:
import PySide6.QtCore
# 打印PySide6版本
print(PySide6.__version__)
# 打印用于编译PySide6的Qt版本
print(PySide6.QtCore.__version__)
不出意外,会打印出我们需要的结果。
PyCharm
安装了Pyside6
要想使用PyCharm的设置,我们需要先有一个项目。
这里我们不使用PyCharm自带的创建项目选项,而是在系统文件浏览程序中创建好一个空白文件夹然后用PyCharm打开。
如果你安装了Anaconda3,需要在项目中把解释器设置为系统解释器。设置解释器可以在PyCharm界面的右下角,有一个Python+版本号的选项,点击进去进行操作。
然后再设置 > 工具 > 外部工具中添加和VSCode一样的配置信息即可。
当然,名称什么的可以随便取。
配置好后用上面的程序验证一下,一般不会出问题。
没安装Pyside6
没安装Pyside6,我们创建项目就是用PyCharm自带的创建选项。
在位置处更改以下项目名,或者可以点选创建 main.py 欢迎脚本,然后直接创建就行。
我们修改main.py中的代码为上面的验证程序就行。我们可以发现,程序会有提示错误,那是因为我们还没为该项目安装好Pyside6。
我们可以用以下方法安装:
也可以使用旁边的终端选项使用pip install pyside6
安装。
通过以下这两种方法安装的Pysid6都是安装在项目中的,全局无法使用。以下每次新建Pyside6项目都需要重新安装。
使用
一切都配置好后,我们运行一个简单的程序试一下:
import sys
import random
from PySide6 import QtCore, QtWidgets, QtGui
class MyWidget(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.hello = ["Hallo Welt", "Hei maailma", "Hola Mundo", "Привет мир"]
self.button = QtWidgets.QPushButton("Click me!")
self.text = QtWidgets.QLabel("Hello World",
alignment=QtCore.Qt.AlignCenter)
self.layout = QtWidgets.QVBoxLayout(self)
self.layout.addWidget(self.text)
self.layout.addWidget(self.button)
self.button.clicked.connect(self.magic)
@QtCore.Slot()
def magic(self):
self.text.setText(random.choice(self.hello))
if __name__ == "__main__":
app = QtWidgets.QApplication([])
widget = MyWidget()
widget.resize(800, 600)
widget.show()
sys.exit(app.exec())
Bingo!一切准备就绪,接下来就学习一个个组件。