首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Shiboken2和自定义Qt小部件

Shiboken2和自定义Qt小部件
EN

Stack Overflow用户
提问于 2017-12-02 11:52:14
回答 1查看 1.4K关注 0票数 5

在Windows上,我需要在Python中使用一些用C++编写的自定义C++小部件,而且由于其许可,我必须使用pyside2

我已经能够从源代码编译pyside2库(连同shiboken2示例),但我无法找到一个简单的示例来说明如何包装自定义Qt5小部件。

我知道pyside2还没有正式发布,但是它似乎已经被使用了(例如在Maya中):在PySide2应用程序中,如何获得QWindow的ID?

有人能给出暗示或指示吗?一个最小的例子就更好了。

编辑

基于@placinta注释,我创建了一个存储库,其中包含一个试图包装自定义QMainWindow的最小示例。

在我的测试中,我使用了包装pyside2 5.6的Conda封装

当我执行shiboken2可执行文件时,我得到的是数吨警告

我假设这些警告是用编译错误生成的代码触发shiboken2的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-25 17:37:16

我最初的CMake配置的一个问题是描述了这里。也就是说,CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS有其局限性,所以我转而使用“旧”导出标头

但是,缺少的metaObject()成员函数声明的编译错误仍然存在。它的工作方式是手动添加声明,因为实现存在于_wrapper.cpp中。虽然这并不是一个令人满意的解决方案,但对于其他用户来说,它是一个起点。

一张在https://bugreports.qt.io/browse/PYSIDE-597发行的Qt票据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47607616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档