在Qt Creator中开发Python应用程序

52 投票
2 回答
87876 浏览
提问于 2025-04-18 08:59

我之前用Qt Creator开发过几个C++的项目,现在想试试用Python来实现Qt。我发现Qt Creator 2.8及以上版本支持Python,但是到目前为止我还没弄明白怎么用它创建一个Python的Qt应用。网上关于这个的资料似乎也不多。

我该如何在Qt Creator中设置这样一个项目呢?我希望能找到一个简单的“Hello World”项目,这样我可以在Qt Creator中打开它,并以此为基础来构建其他东西。

2 个回答

8

谢谢你,这对我帮助很大。

我根据你的说明,设置了一个新的Python开发环境,构建和运行部分,看起来效果不错。

以下是构建设置:

qtcreator python build settings

以下是运行设置:

qtcreator python run settings

注意,我把 /usr/bin/python 链接到了 /usr/bin/python3.6。

以下是项目文件设置:

qtcreator python project settings

唯一需要注意的是,进入工具 -> 选项 -> 构建和运行,取消选中“总是构建项目在部署之前”和“总是部署项目在运行之前”。

一旦你设计好了一个表单,就可以点击构建来创建 UI.py 文件,然后通过点击运行来执行当前选中的 Python 源文件。

对于像我这样的 PyQt 新手,我发现以下资源特别有帮助,虽然我是在 Linux 上,而不是 Windows……

http://projects.skylogic.ca/blog/how-to-install-pyqt5-and-build-your-first-gui-in-python-3-4/

编辑。

我还添加了 pdb - Python 调试器。

qtcreator python pdb settings

你可以通过点击运行按钮上方的按钮来选择它:

qtcreator run button

然后再点击运行。你可以在代码中设置断点,使用以下代码片段,我在 pdb 运行设置的系统环境中添加了 DEBUG = 1,在运行 Python 环境中添加了 DEBUG = 0:

if (QtCore.QProcessEnvironment.systemEnvironment().value("DEBUG") == "1"):
                import pdb; QtCore.pyqtRemoveInputHook(); pdb.set_trace()
48

现在,Qt Creator 允许你创建 Python 文件(不是项目)并运行它们。它有语法高亮的功能,但缺少一些更复杂的功能,比如自动补全。

要运行脚本,你需要进行一些设置(我使用了这个教程)。打开 Qt Creator,然后去 工具->选项->环境->外部工具。点击 添加->添加类别,创建一个新类别(比如叫 Python)。接着,选择刚创建的类别,点击 添加->添加工具 来创建一个新工具,比如叫 RunPy。选择这个工具后,在右边的字段中填写以下内容:

  1. 描述 - 可以随便填
  2. 可执行文件 - python.exe 的路径
  3. 参数 - %{CurrentDocument:FilePath}
  4. 工作目录 - %{CurrentDocument:Path}
  5. 环境 - QT_LOGGING_TO_CONSOLE=1

你应该得到类似这样的设置:

enter image description here

现在,去 文件->新建文件或项目->Python,选择 Python 源文件。要运行刚创建的脚本,可以通过 工具->外部->Python->RunPy 来执行。

你也可以用同样的方法添加 pyuic: 再次点击 添加->添加工具 按钮,创建一个新工具 - 这次叫 PyUic。再次选择它,并在右边的字段中填写:

  1. 描述 - 可以随便填
  2. 可执行文件 - pyuic5 的路径
  3. 参数 - -o UI%{CurrentDocument:FileBaseName}.py -x %{CurrentDocument:FilePath}
  4. 工作目录 - %{CurrentDocument:Path}
  5. 环境 - QT_LOGGING_TO_CONSOLE=1

这样你就可以把 PyUic 也连接上了。

撰写回答