Dou*_*ank 11 c# gtk mono webkit
我试图想出最简单的在Windows上使用Gtk使用Mono.WebBrowser的例子.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 ();
}
Run Code Online (Sandbox Code Playgroud)
编译,运行和浏览器.初始化是真的.但它没有呈现为Gtk.Window(或我尝试过的任何其他Gtk.widget).什么触发浏览器实际呈现自己?可能是我无法将其直接渲染到一个窗口中(我看过mono-docbrowser [1]源代码,并且有一个更复杂的例子,但它也没有呈现).
我已经看过webkit-sharp,但无法使用Gtk在Windows或Mac上运行.
[1] https://github.com/mono/mono-tools/tree/master/docbrowser
我不记得究竟在哪里,但我在某处读到了Mono.WebBrowser名称空间以某种方式被弃用,转而支持WebkitSharp.
之前我尝试过类似的东西,但是我在linux发行版中使用了webkit-sharp.dll.试图编译它并在Windows上运行它但它没有奏效.所以事实证明我错过了webkit-gtk dll,它实际上是渲染整个东西(webkit-sharp只是胶水代码,如果你愿意的话,它是一个包装器)
我发回了一封电子邮件给其中一位维护人员(Andreia Gaita),并得到了一个可能对你有帮助的回复(关于在windows/osx中使用webkit-sharp)给我留言,我会转发给你那封邮件.
| 归档时间: |
|
| 查看次数: |
6929 次 |
| 最近记录: |