开发Qt for Python 应用程序
使用 Qt for Python,您可以在 Python 应用程序中使用 Qt 6 API。使用 PySide6 模块访问单个 Qt 模块,如 Qt Core, Qt GUI和 Qt Widgets.
以下章节将介绍如何使用Qt Creator 来开发Qt for Python :
- 设置 PySide6
- 创建Qt for Python 应用程序
- 选择 Python 版本
- 为 Python 创建工具包
- 使用 Python 交互式 shell
- 配置 Python 语言服务器
- 运行 Python 应用程序
- Python 运行设置
- PDB 版本
- 支持的调试器
有关使用Qt for Python 进行开发的更多信息,包括限制,请参见 Qt for Python.
设置 PySide6
从Qt Creator 运行 PySide6 项目的推荐方法是为每个项目安装 PySide6。首次打开项目的 .py 文件时,Qt Creator 会提示您安装。
此外,Qt Creator 还会提示你安装Python 语言服务器,它提供代码补全和注释等服务。选择Install 安装 PySide6 和语言服务器。
创建Qt for Python 应用程序
使用向导创建Qt for Python 应用程序项目。向导会生成一个项目文件pyproject.toml
,其中列出了 Python 项目中的文件和其他配置。向导还会生成一个.py
文件,其中包含一些模板代码和requirements.txt
,用于存储所生成代码的 PySide 版本。此外,基于 widget 的 UI 向导会创建一个.ui
文件,其中包含Qt Widgets Designer 窗体,而Qt Quick Application 向导会创建一个.qml
文件,其中导入Qt Quick 控件。
Window 向导将代码添加到源文件,而不添加用户界面文件。
Empty 向导会在源文件中添加代码,但不会添加任何类,因此您需要自己添加和实例化这些类。
pyproject.toml
文件是基于 TOML 的配置文件,它取代了以前使用的.pyproject
配置文件。您仍然可以打开并使用.pyproject
文件,但我们建议您为新项目选择pyproject.toml
文件。
选择 Python 版本
在Projects >Build & Run 中为项目选择的套件会设置要使用的 Python 版本。
编辑模式工具栏会显示当前的 Python 版本。
要使用另一个 Python 版本,请为项目激活另一个工具包。
为 Python 创建工具包
Qt Creator 会自动将能找到的所有 Python 版本添加到首选项> > 中的 Python 版本列表中。它会为不在虚拟环境中的全局 Python 版本生成工具包。Python Interpreters
您可以添加和删除 Python 版本,并清理对已卸载但仍出现在列表中的 Python 版本的引用。
要在打开不属于某个项目的.py
文件时使用选定的 Python 版本,请选择Make Default 。
要将虚拟环境用作工具包,请在Interpreters 中选择它,然后选择Generate Kit 。
使用 Python 交互式 shell
您可以在Edit 模式下编写 Python 代码。选择工具栏上的REPL ,即可在终端视图中启动Python 交互式 shell。
要启动 shell 并将当前文件作为模块导入,请选择REPL Import File 。要同时导入文件中的所有函数,请选择REPL Import * 。
另请参阅 教程:Qt Widgets 和 Python、教程:UI 和 Python、教程:UI和 Python: Qt Widgets UI 和 Python、教程:Qt Quick 和 Python,以及为项目激活工具包。
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.