准备工作
1、安装Python
Python下载地址:Download Python | Python.org
2、安装PyCharm
PyCharm下载地址:下载 PyCharm:JetBrains 为专业开发者提供的 Python IDE
1. 新建项目PySide6Examples
打开PyCharm,新建项目PySide6Examples。
2. 点击底部“Terminal”选项打开终端命令行窗口,输入python -m pip install --upgrade pip升级pip到新版本。
3. 输入命令pip install PySide6安装最新版本的PySide6。
这样就安装好了6.3.1版本的PySide6。
4. 修改main.py,编写一个简单程序测试一下环境。代码如下:
import random
import sys
from PySide6 import QtWidgets, QtCore
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__":
if __name__ == "__main__":
app = QtWidgets.QApplication([])
widget = MyWidget()
widget.resize(800, 600)
widget.show()
sys.exit(app.exec())
运行结果如下表明PySide6环境安装成功。
5. 下载官网examples
Qt for Python的官网文档地址:https://doc.qt.io/qtforpython/quickstart.html/
打开Git Bash(现在应该是程序员必备吧,不清楚的百度一下)在D盘根目录(根据你的个人偏好随意选择存放地点)下新建一个名为PySide6的文件夹,用于存放PySide6源码。执行下面命令下载pyside源码
git clone --recursive https://code.qt.io/pyside/pyside-setup
进入pyside-setup目录找到examples目录
把它拷到之前建的PySide6Examples项目中去
至此项目里已经有了examples
好了,现在可以开始你的PySide6探索之旅了!
运行里面的示例代码,报了一个错
DeprecationWarning: 'exec_' will be removed in the future. Use 'exec' instead.
sys.exit(app.exec_())
这是因为我们checkout出来的是6.0版本的,在6.0版本里是调用app.exec_(),在后续版本都改成了app.exec(),而我们安装的PySide6是6.3.1版本的,所以这里不认识app.exec_(),所以报错了。
打开Git Bash,回到pyside-setup目录,用git branch -r查看一下现在有哪些版本,我们还是下载个最新的吧。
执行git checkout 6.3.1切换到6.3.1的源码。
再执行git branch命令检查一下,OK,当前已经是6.3.1版本的了。
我们再把examples重新拷到PySide6Examples项目下。
好了,完美运行。我们继续探索吧...
另外,查阅examples代码的时候,这里报了个错qApp,没有定义就直接用了,但是功能又是正常的,百思不得其解。
查了一下官方文档
原来它是C++ API中定义的一个宏
PySide6和PyQt6都是出自Qt,很多用法基本相同,以前有PyQt开发经验的人,很快就能转到PySide6上来。
这里只是走马观花的过了一遍PySide6的官方示例,更多示例和用法可以参照官网指南:
Qt for Python Tutorials - Qt for Python
要学的东西很多,路漫漫其修远兮吾将上下而求索!