0

我正在编写一个 Python/PyQt4 应用程序,它在 QWebView 小部件中生成并显示一个页面。该页面包含我希望能够调用从 python 应用程序返回数据的函数的 javascript 代码。

到目前为止,我可以调用不返回数据的函数(使用 pyqtSlot 装饰器),并通过将参数公开为属性来调用接受参数的函数(使用 pyqtProperty 装饰器)。我还没有弄清楚如何做的是调用一个带有参数的python函数,它返回数据。

问题 9615194 解释了如何从 C++ 执行此操作,但我看不到如何将其传输到 PyQt4。

4

1 回答 1

1

我怀疑您没有使用result=关键字在pyqtSlot装饰器中指定返回值?

@pyqtSlot(str, result=str)
def echo(self, phrase):
    return self.parent().echo(phrase)

我最近自己也遇到了这个问题。如果省略result=,则不会产生错误,该方法只是默默地不返回任何内容。非常令人抓狂,直到我想通了。请参阅我对这个问题的回答以获取一个有效的示例。

于 2012-08-02T17:27:44.677 回答