如何将用C++编写的Qt4小部件实现到一些Python代码中
How to implement Qt4 widgets written in C++ into some Python code?
在我尝试使用 PyQt4 创建 GUI(文档查看器)时,未能重现现有程序的质量,有人建议我应该使用这些现有程序的 Qt4 小部件(准确地说是 Okular),而不是重新发明轮子。
很公平,但那些Qt4小部件是用C++编写的:我应该如何从Python方面调用它们?它是否需要我学习C(在这种情况下,我宁愿花更多的时间来找出一个完整的Pythonic解决方案)?
Qt
不是用C写的,而是用C++写的,Okular
也是如此。
不幸的是,让C++库使用 python 并不像通过 ctypes
使用 C 库那么容易。为此,您需要围绕C++ API 编写一些包装器代码以使其正常工作。
一些方法可以做到这一点:
-
sip
- 由 PyQt 使用 -
shiboken
- 由 PySide 使用 -
cython
也可以用来包装C++,不知道它是否与Qt配合得很好
相关文章:
- gRPC 生成的代码缺少服务实现
- LLVM |如何实现逻辑非操作的 IR 代码生成
- 如何知道用于实现标准代码段的确切数据结构和算法,例如在C++STL中?
- 在实现合并排序代码时无法计算所有反转
- 如何实现此伪代码?
- 使用双LL在C++中实现Stack失败,出现异常"EXC_BAD_ACCESS(代码=2,地址=0x7fff5
- 如何减少大量包装类的实现代码?
- 如何以及在何处使用带QT的Basler Cam实现opencv人脸检测代码
- 实现在多线程代码中安全恢复的断点
- C++实现代码中的字符串不应存在于输出二进制文件中.如何解决
- 实现代码如何仅包含头文件
- 中断迭代器的 ICU 实现代码
- 两个插件链接到具有不同实现(代码)的同名 DLL 或共享库对象 (so)
- C++:模板实现(代码样式)
- 其中是time.h实现代码
- Dijkstra算法实现-代码不能用于较大的输入
- 理解数据结构实现代码
- 如何使用嵌套枚举实现代码重用
- 在这个应用程序中通过JNI实现C++代码值得吗
- C++中的接口+实现:代码不执行