我需要使用QWebKit重新實現JavaScript框架。目前我已經成功地從JavaScript調用C++方法,但現在我需要註冊一個JavaScript回調函數,並且可以從C++調用它。如何將JavaScript函數發送給C++,稍後調用它
在原始系統(使用WebkitGTK製作)中,我構建了一個接收對象作爲參數的C函數。該對象是被稱爲回調的JavaScript函數。舉例:
bool cb_function(param1, param2) {
alert("This is the callback, called with "+param1);
}
my_c_class.set_callback(cb_function);
在這裏,我定義了* cb_function *回調函數,並將它發送到底層框架。然後,在C中,我使用JSObjectCallAsFunction()在需要時調用JavaScript函數,並向它發送一些參數。
我需要知道的是如何用QtWebKit代替它。我假定第一部分需要使用接收QObject或QVariant參數的Q_INVOKABLE方法(在本例中稱爲* set_callback *)。這是正確的嗎?
現在第二部分:我如何從C++調用存儲在該QObject或QVariant中的函數?
謝謝!