
PySide6 官方教程
文章平均质量分 70
本专栏翻译自Qt官网的Qt for Python(PySide6)教程,方便大家学习。学习过程中欢迎沟通探讨,本人英语水平有限,如有翻译不佳的地方请见谅。
两只程序猿
一只猴,两只猴,三只猴。
展开
-
【Qt for Python官方教程】基于Python的上下文属性
本篇教程将快速地教大家如何编写一个载入 QML 文件并与之交互的 python 应用程序。与传统语言(C++ 等)不同,QML是一种描述性语言,它能让你更快地设计 UI 界面。QtQml 和 QtQuick 模块提供了 Python 使用 QML 所需的底层。...翻译 2021-09-02 11:57:44 · 2934 阅读 · 0 评论 -
【Qt for Python官方教程】创建第一个Quick/QML程序
QML 是一种描述性语言,用它开发程序可以比传统语言更快速。由于它的描述性特性,用于设计 UI 界面非常理想。在 QML 中,用户界面用一个带有属性的对象树来描述。在本篇教程中,我们将讲解怎么用 PySide6 和 QML 完成一个简单的 “Hello World” 程序。一个 PySide6/QML 程序至少包含两个文件:一个 QML 文件用于描述用户界面,另一个 python 文件用于载入 QML 文件。简单起见,我们把这两个文件放在同一个目录下。下面是一个简单的 QML 文件,命名为 view.q翻译 2021-08-21 22:15:33 · 6263 阅读 · 4 评论 -
【Qt for Python官方教程】使用pyside6-rcc引入.qrc文件
Qt 资源系统(Qt Resource System)是在应用程序里存储二进制文件的一种机制。文件可以被嵌入到应用程序中,通过 QFile 类,和使用以 :/ 开头的文件名表示的 QIcon 和 QPixmap 类来访问。Qt 资源系统经常用来存储图片、图标、字体等各种第三方资源。这篇教程里我们将学习怎么载入自己的图片来作为按钮图标。为了方便学习,我们来尝试修改 Qt 例程里的多媒体播放器。它的界面如下,多媒体的控制(播放、暂停、停止等)是用 QPushButton 组件完成的,使用的都是默认图标。翻译 2021-08-07 19:43:49 · 6250 阅读 · 3 评论 -
【Qt for Python官方教程】改变Qt Widgets程序的样式
Qt Widgets 编写的程序默认使用系统原生样式。如果整个系统改变了样式设置,你的Qt程序也会跟着变换样式。但是,有时候我们需要自己改变窗口或者各个组件的样式。比如,我们可以看下面这段例程:import sysfrom PySide6.QtCore import Qtfrom PySide6.QtWidgets import QApplication, QLabelif __name__ == "__main__": app = QApplication() w = QLab翻译 2021-08-15 23:09:08 · 2850 阅读 · 1 评论 -
【Qt for Python官方教程】使用QUiLoader和pyside6-uic导入ui文件
本篇文章介绍如何在 Qt for Python 项目中用 Qt Designer 来创建一个基于 Qt Widgets 的图形界面。Qt Designer 是一个图形化的 UI 设计工具,可以在 pyside6 的目录下找到它 (designer.exe),同时在 Qt Creator IDE 里也可以找到它。Qt Designer 的使用在官网的 Using Qt Designer 教程里详细介绍。Qt Designer 设计的界面被保存为 .ui 文件,这个文件使用的是基于 XML 的格式。在编译项目翻译 2021-08-07 18:09:32 · 11651 阅读 · 1 评论 -
【Qt for Python官方教程】使用QTreeWidget组件显示数据
如果你想要在窗口中显示用**树形结构**表示的数据,可以使用 `QTreeWidget` 组件。> 注意:使用 `QTreeWidget` 不是显示树形结构数据的唯一途径。你可以创建数据模型,然后使用 `QTreeView` 组件来显示它,但这不在该教程的范围之内。下面是使用 `QTreeWidget` 组件显示树形结构数据的具体步骤:1. 引用 `QTreeWidget` 和 `QTreeWidgetItem` ```python import sys from PySide6.Q翻译 2021-08-03 21:41:44 · 4997 阅读 · 0 评论 -
【Qt for Python官方教程】使用QTableWidget组件显示数据
如果你想要在表格里显示数据,可以直接使用 QTableWidget 组件来完成。本节教程将完成一个显示颜色列表的程序。需要注意,使用 QTableWidget 不是在表格中显示信息的唯一方法。你也可以创建数据列表并用 QTableView 将其显示出来,但这不是本节教程的内容。引用 QTableWidget,QTableWidgetItem 和 QColor 来显示背景颜色:import sysfrom PySide6.QtGui import QColorfrom PySide6.QtWid翻译 2021-04-30 23:35:27 · 7411 阅读 · 11 评论 -
【Qt for Python官方教程】创建带输入框和按钮的对话框程序
本节教程将展示如何用 QDialog 创建一个简单的对话框程序。这个程序可以让用户在 QLineEdit 组件中填入自己的名字,然后当点击 QPushButton 组件时程序会跟你打招呼。我们先从创建一个对话框窗口的代码开始:import sysfrom PySide6.QtWidgets import QApplication, QDialog, QLineEdit, QPushButtonclass Form(QDialog): def __init__(self, parent=N翻译 2021-04-30 23:11:40 · 5667 阅读 · 4 评论 -
PySide6官方教程 循序渐进学好Qt for Python
本系列 PySide6(Qt for Python)教程翻译自Qt官网。Qt for Python 相较于 PyQt,网上的中文参考资料还不多,官网给的资料无疑是有参考价值的,翻译为中文的大家方便看。本人英文水平有限,如有翻译纰漏之处多多指教。我原本是在翻译 PySide2 的官网教程,结果两三个月忙于学业,再回来一看,大人,时代变了。Qt 5升级到 Qt 6了,PySide2 也跟着升级到了 PySide6 (从2直接到6,我还以为我穿越了)。说实话 PySide2 和 PySide6 几乎没差别,所原创 2021-02-17 17:29:22 · 47498 阅读 · 5 评论 -
【Qt for Python官方教程】创建一个简单按钮
在这篇教程中,我们为你讲解如何用 Qt for Python 处理信号和槽。信号和槽是Qt的一个特色,用来让你的图形组件与其他图形组件或 Python 代码交流。在例程中,我们将创建一个按钮:每当点击这个按钮,输出信息 “Button clicked, Hello!” 到 Python 控制台。首先,引用所需的 PySide6 类和 sys 模块:import sysfrom PySide6.QtWidgets import QApplication, QPushButtonfrom PySide6翻译 2021-02-16 13:09:00 · 5852 阅读 · 1 评论 -
【Qt for Python官方教程】创建第一个QtWidgets程序
像学习其他编程框架一样,我们从传统的 “Hello World” 程序开始学习。下面是一个用 PySide6 编写的 Hello World 简单示例:import sysfrom PySide6.QtWidgets import QApplication, QLabelapp = QApplication(sys.argv)label = QLabel("Hello World!")label.show()app.exec_()要用 PySide6 创建一个窗口程序,你必须先从 PyS翻译 2021-02-16 12:54:09 · 9790 阅读 · 2 评论 -
【Qt for Python官方教程】将程序分发到其他系统/平台
在完成几个应用程序的开发后,你可能希望将它们分发给其他用户。如果你对 Python 包没有太多经验,可能会问:如何创建 Python 可执行文件?如果你经常使用的是编译性编程语言,部署程序并不困难。但对于 Python(解释性语言)来说就有些困难了。Python 应用程序的部署,我们也称之为 “冻结”。它实质上是将你的虚拟环境内容一起分发给其他用户。重要由于 Python 不支持 WebAssembly 和移动平台(如 Andoird、iOS),你不能直接在这些平台部署应用程序,而需要新的步骤来完翻译 2021-02-16 12:47:15 · 3250 阅读 · 0 评论 -
【Qt for Python官方教程】常见文件格式
开发 Qt for Python 应用程序会遇到很多不同的文件类型:ui, qrc, qml, pyproject 等。下面分别简单介绍一下它们。Python文件 .py在开发 Qt for Python 项目时,Python 文件是你最常遇见的文件格式。值得注意的是,你可以抛开 .ui, .qrc, .qml 文件,只用 Python 文件来编写程序。但是使用这些格式可以帮你简化一些开发流程,并为你的应用程序实现一些新功能。class MyWidget(QWidget): def __in翻译 2021-02-16 11:42:29 · 3654 阅读 · 0 评论 -
【Qt for Python官方教程】生成Binding:什么是Shiboken?
当你安装 PySide6 时可能会注意到,Shiboken6 也被作为依赖项安装到了你的电脑上:(env) [qt ~]$ pip install pyside6Collecting pyside6 Downloading PySide6-6.0.0-6.0.0-cp36.cp37.cp38.cp39-abi3-manylinux1_x86_64.whl (170.5 MB) |████████████████████████████████| 170.5 MB 42 kB/sColle翻译 2021-02-15 23:38:34 · 7202 阅读 · 0 评论 -
【Qt for Python官方教程】推荐使用的IDE(集成开发环境)
与其他任何一个 Python 模块相同,Qt for Python 可以在任何兼容 Python 的 IDE(集成开发环境)里使用。但是并不是所有 IDE 都可以像 Qt Creator 一样提供丰富的功能。除了编写代码外,你可能还需要执行一些外部步骤来帮助你的程序开发。你需要在命令行里:从 a.ui 文件生成 Python 文件:pyside6-uic -i form.ui -o ui_form.py从 a.qrc 文件生成 Python 文件:pyside6-rcc -i resources.翻译 2021-02-15 23:18:09 · 11335 阅读 · 4 评论 -
【Qt for Python官方教程】Qt, QML, Widgets 有什么区别?
如果你刚开始学习 Qt ,那么可能对于Qt, QML, Widgets 这几个概念有点困惑。本节旨在简单介绍与 Qt 开发相关的这几个关键组件。需要注意,Qt 是用 C++ 语言设计和编写的一个 C++ 框架,所以你会发现关于 Qt 的很多有用的文章、例程和概念都是基于 C++ 的。这些内容可能跟Python不相关,但是需要了解的是,Qt for Python 旨在将 Qt 框架尽可能复现到 Python 上。所以你不需要学习 C++ 就可以使用 Qt for Python,同时你慢慢会发现将 C++ 和翻译 2021-02-13 14:33:23 · 9518 阅读 · 1 评论 -
【Qt for Python官方文档】将代码从 Pyside2 移植到 Pyside6
Qt for Python 6.0.0 现在已经发布了 Qt 的关键模块和一些扩展(Qt Concurrent, Qt Help, Qt OpenGL, Qt Print Support Qt Quick Widgets, Qt SQL, Qt SVG, Qt UI Tools and Qt XML)。更多的模块会在后续版本中加入 Qt。移植代码要做的第一件事就是替换导入语句:from PySide2.QtWidgets import QApplication...from PySide2 impor翻译 2021-02-13 13:11:43 · 5452 阅读 · 0 评论