Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Qt for Python/zh: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category:Qt for Python]] | [[Category:Qt for Python]] | ||
{{LangSwitch}} | {{LangSwitch}} | ||
== Qt for Python == | == Qt for Python == | ||
'''Qt for Python''' | [[File:Py-128.png|thumb|left|Qt for Python official logo.]]'''Qt for Python''' 项目旨在为PySide模块提供完整的Qt接口支持。于2015年5月在[https://github.com/PySide GitHub] 上开始开发。此项目计划使PySide支持 Qt 5.3, 5. | ||
4 和 5.5。 2016年4月中Qt公司决定正式支持为其提供接口支持 (查看 [https://groups.google.com/forum/#!topic/pyside-dev/pqwzngAGLWE 详情] ). | 4 和 5.5。 2016年4月中Qt公司决定正式支持为其提供接口支持 (查看 [https://groups.google.com/forum/#!topic/pyside-dev/pqwzngAGLWE details 详情] ). | ||
该模块计划于2018 年6月中旬作为技术预览版发布(支持Qt 5.11)。并在同年12月支持Qt 5.12并正式发布 | |||
2020年12月,该模块跟随Qt6发布,与旧版本相比有以下不同: | |||
* 不在支持 Python 2.7, | |||
* 放弃对 Python 3.5 的支持, 最低支持到 3.6+ (最高 3.9) | |||
* 基础模块有大量删减 ([https://www.qt.io/blog/add-on-support-in-qt-6.0-and-beyond 点此查看删减内容]) | |||
你可以在 [https://www.qt.io/blog/qt-for-python-6-released 官方博客]中看到更多内容. | |||
这个wiki页面跟踪 '''Qt for Python''' 项目开发的进展情况,并提供关于这项工作的更多信息。 | 这个wiki页面跟踪 '''Qt for Python''' 项目开发的进展情况,并提供关于这项工作的更多信息。 | ||
Qt for Python在LGPLv3 / GPLv2和以下平台的商业许可下可用: | Qt for Python在LGPLv3 / GPLv2和以下平台的商业许可下可用: | ||
{| class="wikitable" | |||
|- | |||
| | |||
{| class="wikitable" | {| class="wikitable" | ||
| - | | | - | | ||
!colspan="2" style="background: #aec6cf;text-align: center;"|Linux | ! colspan="2" style="background: #aec6cf;text-align: center;" |Linux | ||
!colspan=" | ! colspan="3" style="background: #aec6cf;text-align: center;" |macOS | ||
!colspan="2" style="background: #aec6cf;text-align: center;"|Windows | ! colspan="2" style="background: #aec6cf;text-align: center;" |Windows | ||
|- | |- | ||
| | | | | | ||
|style="background: #fdfd96;text-align: center;"|32bit | | style="background: #fdfd96;text-align: center;" |32bit | ||
|style="background: #ffb347;text-align: center;"|64bit | | style="background: #ffb347;text-align: center;" |64bit | ||
|style="background: #fdfd96;text-align: center;"|32bit | | style="background: #fdfd96;text-align: center;" |32bit | ||
|style="background: #ffb347;text-align: center;"|64bit | | style="background: #ffb347;text-align: center;" |64bit | ||
|style="background: #fdfd96;text-align: center;"|32bit | | style="background: #ffb347;text-align: center;" |Apple M1 | ||
|style="background: #ffb347;text-align: center;"|64bit | | style="background: #fdfd96;text-align: center;" |32bit | ||
| style="background: #ffb347;text-align: center;" |64bit | |||
|- | |- | ||
|style="background: #aec6cf;text-align: center;"|'''Python | | style="background: #aec6cf;text-align: center;" |'''Python 3.6+''' | ||
|style="background: #ff6961;text-align: center;"| * | | style="background: #ff6961;text-align: center;" | * | ||
|style="background: #77dd77;text-align: center;"| | | style="background: #77dd77;text-align: center;" | | ||
|style="background: #ff6961;text-align: center;"| * | | style="background: #ff6961;text-align: center;" | * | ||
|style="background: #77dd77;text-align: center;"| | | style="background: #77dd77;text-align: center;" | | ||
|style="background: #ff6961;text-align: center;"| ** | | style="background: #ff6961;text-align: center;" | ** | ||
|style="background: # | | style="background: #77dd77;text-align: center;" | *** | ||
| style="background: #77dd77;text-align: center;" | *** | |||
|style="background: # | |} | ||
| | || | ||
| | * <nowiki>*</nowiki> https://wiki.qt.io/Qt_6.0_Tools_and_Versions | ||
* <nowiki>**</nowiki> 不再支持 | |||
* <nowiki>***</nowiki>: 5.14 是第一个支持 Python 3.8的版本, 但 Python 3.8.0 无法在windows上运行. 请使用 '''Python 3.8.1''' 或更高版本. | |||
|} | |} | ||
''' | '''通过 pip 安装 PySide6 只需运行:''' <span style="font-family: monospace;background-color: #cecfd5;display: inline; border-radius: 4px;padding: 3px;">pip install pyside6</span> | ||
[[File:Pyside6 install.gif]] | |||
== '''Qt for Python''' 看起来是什么样的? == | == '''Qt for Python''' 看起来是什么样的? == | ||
{| class="wikitable" | |||
|- | |||
! Code !! Application | |||
|- | |||
| | |||
<syntaxhighlight lang="python" line="line"> | <syntaxhighlight lang="python" line="line"> | ||
import sys | import sys | ||
from | from PySide6.QtCore import Qt | ||
from PySide6.QtWidgets import QApplication, QLabel | |||
if __name__ == "__main__": | if __name__ == "__main__": | ||
app = QApplication( | app = QApplication(sys.argv) | ||
label = QLabel("Hello World") | label = QLabel("Hello World", alignment=Qt.AlignCenter) | ||
label.show() | label.show() | ||
sys.exit(app.exec_()) | sys.exit(app.exec_()) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
|| | |||
[[File:2020-12-16-101334 305x245 scrot.png]] | |||
|} | |||
更多例子可以从 [http://code.qt.io/cgit/pyside/pyside-setup.git/tree/examples 项目仓库] 中的 '''examples''' 文件夹中查看. | 更多例子可以从 [http://code.qt.io/cgit/pyside/pyside-setup.git/tree/examples 项目仓库] 中的 '''examples''' 文件夹中查看. | ||
Line 87: | Line 107: | ||
* '''Qt for Python Development Progress Notes''' The most current view of the progress can be found in Jira: [https://bugreports.qt.io/secure/IssueNavigator.jspa?mode=hide&requestId=17825 Unresolved issues] and [https://bugreports.qt.io/secure/IssueNavigator.jspa?mode=hide&requestId=18025 All issues (including resolved)]. The second link is useful to monitor the progress of the backlog. The best way to achieve this is to sort the list by the "Updated" column. Larger backlog/feature items are filed as "User Stories" in Jira. | * '''Qt for Python Development Progress Notes''' The most current view of the progress can be found in Jira: [https://bugreports.qt.io/secure/IssueNavigator.jspa?mode=hide&requestId=17825 Unresolved issues] and [https://bugreports.qt.io/secure/IssueNavigator.jspa?mode=hide&requestId=18025 All issues (including resolved)]. The second link is useful to monitor the progress of the backlog. The best way to achieve this is to sort the list by the "Updated" column. Larger backlog/feature items are filed as "User Stories" in Jira. | ||
* [[Qt_for_Python_Missing_Bindings|Missing PySide2 bindings]]: the list of the current missing bindings. | * [[Qt_for_Python_Missing_Bindings|Missing PySide2 bindings]]: the list of the current missing bindings. | ||
Revision as of 03:50, 30 December 2020
Qt for Python
Qt for Python 项目旨在为PySide模块提供完整的Qt接口支持。于2015年5月在GitHub 上开始开发。此项目计划使PySide支持 Qt 5.3, 5.
4 和 5.5。 2016年4月中Qt公司决定正式支持为其提供接口支持 (查看 details 详情 ).
该模块计划于2018 年6月中旬作为技术预览版发布(支持Qt 5.11)。并在同年12月支持Qt 5.12并正式发布
2020年12月,该模块跟随Qt6发布,与旧版本相比有以下不同:
- 不在支持 Python 2.7,
- 放弃对 Python 3.5 的支持, 最低支持到 3.6+ (最高 3.9)
- 基础模块有大量删减 (点此查看删减内容)
你可以在 官方博客中看到更多内容.
这个wiki页面跟踪 Qt for Python 项目开发的进展情况,并提供关于这项工作的更多信息。
Qt for Python在LGPLv3 / GPLv2和以下平台的商业许可下可用:
|
|
通过 pip 安装 PySide6 只需运行: pip install pyside6
Qt for Python 看起来是什么样的?
Code | Application |
---|---|
import sys
from PySide6.QtCore import Qt
from PySide6.QtWidgets import QApplication, QLabel
if __name__ == "__main__":
app = QApplication(sys.argv)
label = QLabel("Hello World", alignment=Qt.AlignCenter)
label.show()
sys.exit(app.exec_())
|
更多例子可以从 项目仓库 中的 examples 文件夹中查看.
开始
- 官方文档
- 分别在 macOS, Windows 和 Linux中快速入门: 下载并安装/编译
- 教程: 开始开发pyside2程序
- Shiboken: 有关Python绑定生成器的一般信息。
- 开发: 开始参与开发: 参与开发的一些准则。
- 反馈错误 报告 PySide2 或 Shiboken2.有关的任何问题.
- Git repository (代码审查) (5.12 分支是当前为PySide2工作的分支) 与 PySide2 开放补丁
社区
- 在FreeNode上的官方 IRC 频道 Freenode #qt-pyside
- 官方邮件列表
- Keybase:
- keybase.io/team/pyside
- keybase.io/team/theqtcompany (工作小组 theqtcompany.pyside)
- Gitter: gitter.im/PySide/pyside2 包含关联IRC的bot
- 有想法? 与我们分享吧!
开发状态
- 开发笔记: 开发进程总结
- Qt for Python Development Progress Notes The most current view of the progress can be found in Jira: Unresolved issues and All issues (including resolved). The second link is useful to monitor the progress of the backlog. The best way to achieve this is to sort the list by the "Updated" column. Larger backlog/feature items are filed as "User Stories" in Jira.
- Missing PySide2 bindings: the list of the current missing bindings.
为 the Qt for Python Wiki 作出贡献
这个Wiki是一个社区,您可以很容易地为它出一份力,其中可能包含快速变化的信息。 请将与Qt相关的wiki页面添加到“QtForPython”类别中,将以下文本添加到页面顶部:
[[Category:Qt for Python]]
在创建一个新的wiki页面时,请用前缀"Qt_for_Python/",这样所有的wiki页面名称都将具有相同的结构和面包屑,以便更容易地导航。