栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在Python中使用自定义Qt子类

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Python中使用自定义Qt子类

PyQt通过SIP将C
代码公开给Python
;PySide通过Shiboken这样做。两者都具有与SWIG大致相同的功能(除了它们仅支持“将C
扩展到Python”,而SWIG也具有Ruby,Perl,Java等的后端)。SWIG,SIP和Shiboken都不设计为可以互操作。您无法方便地使用SWIG使用Qt所需的C
++扩展(以支持信号和插槽)来包装任何代码,并且我不知道尝试互操作SIP封装(或Shiboken封装)和SWIG可能遇到的危险包装的代码。

我想问一问,为什么您选择使用两种单独且等效的方法来包装C
++代码库的不同部分(通过SIP或Shiboken进行Qt,通过SWIG进行其他操作)?如果您仍然可以重新考虑这个怪异的设计决定,我会建议您这样做。

如果您选择的SWIG是一成不变的,那么在您使用Qt扩展程序(即插槽或信号)包装C
++代码时,我预计会遇到很大的麻烦,并且对于所有相关人员而言,这通常是非常痛苦的时间。如果您选择 一种
包装方式并坚持使用,则应大大减少问题。我没有Shiboken的实际经验(这有点太新了,现在我几乎再也没有使用GUI应用了……我的世界都是Web应用!!),但是过去曾在此角色中使用过SIP(早在它得到正式记录之前-
这些天在我看来,它 很棒
有记录,并且Shiboken的细读都给了我相同的印象),我可以高度推荐它(实际上,即使我没有选择Qt代码,如果我可以选择它,也可能比SWIG更好)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/662164.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号