pyqt5:从插槽返回 QObject
Posted
技术标签:
【中文标题】pyqt5:从插槽返回 QObject【英文标题】:pyqt5: return QObject from slot 【发布时间】:2014-05-16 13:16:43 【问题描述】:我试图在 pyqt 5 中向 QML 公开一个方法,我需要它来返回一个自定义 QObject。无论如何,我似乎无法解决这个问题。下面的 sn-p 大致显示了我正在尝试做的事情。我尝试将结果参数更改为 QObject、“QObject”和各种其他类型。每个都给我一个不同的错误消息,或者如果没有错误,QML 接收 null 而不是对象。我也尝试将 Bar 注册为一种类型,但仍然没有帮助。
返回这样的自定义对象的正确方法是什么? (注意:我们以前在 C++ 中使用过这个功能。)
class Bar(QObject):
# etc.
bar = Bar()
class Foo(QObject):
@pyqtSlot(int, result=QObject)
def foo(self, arg1):
return bar
【问题讨论】:
【参考方案1】:class Foo(QObject):
@pyqtSlot(int, result=QObject)
def foo(self, arg1):
sip.transferto(bar, bar)
return bar
【讨论】:
sip 是从哪里来的?没有任何解释,这无济于事。以上是关于pyqt5:从插槽返回 QObject的主要内容,如果未能解决你的问题,请参考以下文章