c++ - 如何将用 C++ 编写的 Qt4 小部件实现到一些 Python 代码中?

标签 c++ python qt4 pyqt4

在我尝试使用 PyQt4 创建 GUI(文档查看器)时,未能重现现有程序的质量,有人建议我应该使用那些现有程序的 Qt4 Widgets(准确地说是 Okular 的),而不是重新 -发明轮子。

很公平,但是那些 Qt4 小部件是用 C++ 编写的:我应该如何从 Python 端调用它们?它是否需要我学习 C(在这种情况下,我宁愿花更多时间来找出一个完全 Pythonic 的解决方案)?

最佳答案

Qt 不是用 C 编写的,它是用 C++ 编写的,Okular 也是如此。 .

不幸的是,让 C++ 库与 python 一起工作并不像通过 ctypes 使用 C 库那么容易。为此,您需要围绕 C++ API 编写一些包装器代码以使其正常工作。
实现此目的的一些方法:

  • sip - 由 PyQt 使用
  • shiboken - 由 PySide 使用
  • cython也可以用来包装C++,不知道和Qt玩得好不好

关于c++ - 如何将用 C++ 编写的 Qt4 小部件实现到一些 Python 代码中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10726496/

相关文章:

c++ - C++ 如何在同一行输入多个变量

c++ - 将 tr1::function 转换为 void*

python - reshape 表格以获得每个唯一值的频率

python - 未定义,当从 Selenium 触发时,Chrome 通知中未定义

qt4 - 如何使用 QProcess 在 Windows 上使用默认应用程序打开 PDF 文件?

listview - QML 应用程序中只填充了一行 ListView,知道为什么吗?

c++ - 如何正确理解回车符(又名\r)?

c++ - 如何将对象的属性复制到 vector ?

python - 使用 SymPy 对符号矩阵表达式求幂

c++ - 如何使用 Qt 到 Xlib 窗口绘制矩形