【翻译】Qt for Python(PySide6)官方文档:(1)Qt for Python 快速入门
原文地址:https://doc.qt.io/qtforpython/quickstart.html环境要求PySide6的安装需要如下环境支持:Python 3.6+建议使用虚拟环境,比如 venv 或 virtualenv创建并激活虚拟环境终端运行如下命令(译者注:官方是这样写的,实际上是用PyCharm 自2019.3.3版本之后可自动设置虚拟开发环境,可自行查阅)TODO: 单独写个PyC
环境要求
PySide6的安装需要如下环境支持:
- Python 3.6+
- 建议使用虚拟环境,比如 venv 或 virtualenv
创建并激活虚拟环境
终端运行如下命令(译者注:官方是这样写的,实际上是用PyCharm 自2019.3.3
版本之后可自动设置虚拟开发环境,可自行查阅)
TODO: 单独写个PyCharm自动设置虚拟开发环境的教程
$ python -m venv env/ # Your binary is maybe called 'python3'
$ source env/bin/activate # for Linux and macOS
$ env\Scripts\activate.bat # for Windows
安装
使用pip
安装,非常简单(译者注:如果安装出错请检查python版本是否为64位)
# For the latest version on PyPi
pip install PySide6
# For a specific version
pip install PySide6==6.0
还可以通过如下方式安装
pip install --index-url=http://download.qt.io/snapshots/ci/pyside/6.0.0/latest pyside6 --trusted-host download.qt.io
(译者注:http://download.qt.io/snapshots/ci/pyside/6.0.0/latest/pyside6/ 截图如下,从win_amd64的字样来看,貌似Python 32位环境无法正常安装PySide6,我也是换到Python3.9 64位才成功安装的,尴尬笑!)
测试安装
现在已经成功安装了PySide6,来拉出来溜溜~~~
import PySide6.QtCore
# Prints PySide6 version
print(PySide6.__version__)
# Prints the Qt version used to compile PySide6
print(PySide6.QtCore.__version__)
简单应用示例
既然已经安装完成,不能免俗的要来个“Hello Word”以示致敬。
- 创建一个名为 hello _ world.py 的新文件,并复制如下代码:
import sys
import random
from PySide6 import QtCore, QtWidgets, QtGui
PySide6 的Python模块支持子模块导入,如上我们导入了QtCore
, QtWidgets
, QtGui
3个子模块。
2. 定义名为 MyWidget 的类,它继承了 QWidget 类 并包含了 QPushButton
和 QLabel
2个组件 :
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.layout.addWidget(self.text)
self.layout.addWidget(self.button)
self.setLayout(self.layout)
self.button.clicked.connect(self.magic)
@QtCore.Slot()
def magic(self):
self.text.setText(random.choice(self.hello))
MyWidget 类定义了一个magic函数,该函数从 hello 列表中随机选择一个值。当您单击该按钮时,将调用这个magic函数并显示输出。
- 最后添加一个 main 函数,实例化 MyWidget 并显示它:
if __name__ == "__main__":
app = QtWidgets.QApplication([])
widget = MyWidget()
widget.resize(800, 600)
widget.show()
sys.exit(app.exec_())
Bingo~,它跑起来了,点击按钮试试能收到哪国语言的问候!
扩展阅读
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)