gpt4 book ai didi

python - 我可以像在 PythonQt 中那样在 PyQt 中利用 Qt 元对象系统吗?

转载 作者:行者123 更新时间:2023-11-30 03:43:51 25 4
gpt4 key购买 nike

我知道在 PythonQt 中我可以在 Python 代码中访问基于 MOC 的 QObject 类,并且可以从 C++ 执行 python 代码。是否可以使用 PyQt 做类似的事情,或者它是否仅用于在 Python 中编写 Qt?

我知道 SIP 用于将 C/C++ 代码公开给 Python,但这似乎不如使用元对象系统优雅。

最佳答案

我从来没有用过PythonQt ,但在简要浏览一下这些功能后,似乎从概念强调的角度来看,它确实应该被称为 QtPython。

PyQt 最初是作为在 python 中对 Qt C++ 应用程序进行原型(prototype)设计的工具。因此,它最初是 Qt 库的一个非常薄的包装器,这使得将 Qt 代码从 python 移植到 C++ 几乎是微不足道的,反之亦然。做到这一点仍然很容易。但是自从 PyQt4 以来,重点已经强烈地转向使用 Python 编写 Qt 应用程序变得更容易;而对于 PyQt5,它朝着这个方向走得更远。

因此,PyQt 现在纯粹用于在 python 中编写 Qt 应用程序(PySide 也是如此)。它不提供任何在 C++ 中执行 python 代码的工具(除了通过虚函数间接执行)。如果您需要向 python 公开第三方 Qt 类,则需要使用 Sip 包装它们。

至于元对象系统:PyQt 确实包装了 QMetaObject等等,但是您的问题中没有足够的信息来了解这对您是否有用。

关于python - 我可以像在 PythonQt 中那样在 PyQt 中利用 Qt 元对象系统吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35860721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com