【发布时间】:2013-02-11 14:44:53
【问题描述】:
我正在尝试提出使用 Mono.WebBrowser 在 Windows 上使用 Gtk。 Windows.Forms 版本有效 很好(如果不指定 Platform.Gtk 则默认),但我需要集成到现有的 Gtk 跨平台应用程序中。
这是一个简单的例子:
public static void Main (string[] args)
{
Gtk.Application.Init ();
Gtk.Window win = new Gtk.Window ("Title");
Mono.WebBrowser.IWebBrowser browser =
Mono.WebBrowser.Manager.GetNewInstance(Mono.WebBrowser.Platform.Gtk);
browser.Load(win.Handle, 500, 250);
win.ShowAll ();
GLib.Timeout.Add( 500, delegate {
browser.Navigation.Go ("http://google.com/");
return false;
});
Gtk.Application.Run ();
}
编译、运行和浏览器。初始化为真。但它不会呈现到 Gtk.Window (或我尝试过的任何其他 Gtk.widget )。什么触发 浏览器实际呈现自己?可能是我无法渲染这个 直接进入一个窗口(我查看了 mono-docbrowser [1] 源代码, 并有一个更复杂的例子,但它也不渲染)。
我查看了 webkit-sharp,但无法让它在带有 Gtk 的 Windows 或 Mac 上运行。
[1]https://github.com/mono/mono-tools/tree/master/docbrowser
【问题讨论】:
-
嗨,道格!我有一个你的问题——我需要一个跨平台的 Mono GTK# 网络浏览器(for user interface)。那么你最终选择了什么?问候!
-
我放弃了。如果过去 5 年情况没有改变,或许在不同平台上有不同的解决方案可能是一个答案。