开发环境
操作系统:Win10
开发工具:Anaconda4.9.2+PySide6+QtCreator4.14
Anaconda安装
从清华源下载X86_64版本,然后直接“下一步”式安装即可。
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
选用Anaconda的目的不仅是使用它自带的Python3.8.5,另外它还打包了很多常用的Python工具包,而且也非常方便管理工具包。
PySide6安装
(base) C:\Users\Gary>pip install pyside6
Collecting pyside6
Downloading PySide6-6.0.1-6.0.1-cp36.cp37.cp38.cp39-none-win_amd64.whl (66.8 MB)
|████████████████████████████████| 66.8 MB 82 kB/s
Collecting shiboken6==6.0.1
Downloading shiboken6-6.0.1-6.0.1-cp36.cp37.cp38.cp39-none-win_amd64.whl (2.3 MB)
|████████████████████████████████| 2.3 MB 1.3 MB/s
Installing collected packages: shiboken6, pyside6
Successfully installed pyside6-6.0.1 shiboken6-6.0.1
- 注意:默认会自动安装shiboken6,这个工具在后面的文章中会具体介绍,主要是用来与C++交叉使用。
验证PySide6安装是否成功
(base) C:\Users\Gary>python
Python 3.8.5 (default, Sep 3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import PySide6.QtCore
>>> print(PySide6.__version__)
6.0.1
>>> print(PySide6.QtCore.__version__)
6.0.1
>>> quit()
目前安装的是Qt6.0.1,截止写此博客,是Qt最新的版本。
安装Qt Creator4.14
直接从Qt官网下载安装即可,注意我这里下载的是Windows 64位版本,具体视自己的开发环境。
https://www.qt.io/download
体验一下搭建的环境
import sys
import random
import os
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_())
如果成功显示一个Hello World的对话框就表示环境OK。
Windows环境下常见错误
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
原因是: 平台插件环境变量没有指定QT_QPA_PLATFORM_PLUGIN_PATH
- 方法1:
如果是Windows环境可以直接添加这个环境变量即可
- 方法2:
在代码中指定插件环境变量:
dirname = os.path.dirname(__file__)
#plugin_path = os.path.join(dirname, 'plugins', 'platforms')
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = 'C:\\Users\\Gary\\anaconda3\\Lib\\site-packages\\PySide6\\plugins'