0

我正在从 Vala 创建一个 WebKit WebView。

我连接了 UserContentManager 并注册了一个脚本消息处理程序。

在此之前我还连接了 script_message_received 信号,因为它写在 Valadoc 文档中。

脚本已成功注册,但未script_message_received触发。执行脚本后

window.webkit.messageHandlers.test.postMessage ('test');

什么都没发生。

WebView webKit = new WebView ();

webKit = new WebView.with_user_content_manager (new WebKit.UserContentManager ());

webKit.user_content_manager.script_message_received.connect ((js_result) =>
{
    debug ("Test result");
});

if (! webKit.user_content_manager.register_script_message_handler ("test"))
    debug ("Failed to register script message handler");

我该怎么做才能触发信号?

4

1 回答 1

1

问题出在public class Main: Object

你需要使用public class Main: Gtk.Window

否则没有任何效果。

于 2018-06-12T17:15:16.663 回答