python – PySide:从插槽返回一个值
发布时间:2020-12-20 13:34:31 所属栏目:Python 来源:网络整理
导读:Pyside documentation声明插槽可以有返回值,但我还没弄清楚它是如何做到的. 我找不到任何可用的代码示例,所以我添加了一个装饰器,如文档所示: def testSlot(self): print('testSlot called') return 'RETURN VALUE RETURN VALUE RETURN VALUE' 我试图像这样
Pyside
documentation声明插槽可以有返回值,但我还没弄清楚它是如何做到的.
我找不到任何可用的代码示例,所以我添加了一个装饰器,如文档所示: def testSlot(self): print('testSlot called') return 'RETURN VALUE RETURN VALUE RETURN VALUE' 我试图像这样捕获返回值: ret = foo.testSignal.emit() 但它不起作用.我的测试代码,你可以找到here,也是crashes,输出this错误.感谢帮助! 编辑:我已经删除了装饰器,它解决了崩溃的问题,但它仍然没有返回我希望它返回的值. 运行脚本就是这样:
解决方法
我担心你认为不可能的事情.
信号和插槽松散地耦合在一起,因此发出信号不会直接调用插槽,因此无法检索“其”返回值. 如果你想一想,这可能会更清楚: 您可以将2个不同的插槽(例如2个不同的类)连接到一个信号,这些插槽返回不同的值.两个返回值中的哪一个应该到达您尝试分配的变量? 您可能的意思是this:这是完全不同的东西,并允许通过“名称”在MetaObject系统上“调用”该方法返回值. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |