文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>linux下的应用程序嵌入gecko内核

linux下的应用程序嵌入gecko内核

时间:2006-03-07  来源:雨中漫步

mono里有个

Gecko.WebControl Class

Embed a Mozilla browser window into your Gtk# application.

C# Example
using System;
using Gtk;
using Gecko;

namespace GeckoTest
{
     class GeckoTest
     {
          WebControl moz;
          Entry entry;
          string currentUrl;
          Statusbar sb;
          ProgressBar pb;
          
          static void Main (string[] args)
          {
               new GeckoTest ();
          }
          
          GeckoTest ()
          {
               Application.Init ();
               
               Window win = new Window ("GeckoTest");
               win.SetDefaultSize (800, 600);
               win.DeleteEvent += new DeleteEventHandler (window_delete);
               
               VBox vbox = new VBox (false, 1);
               win.Add (vbox);
               
               HBox tb = new HBox (true, 1);
               Button btnBack = new Button (Gtk.Stock.GoBack);
               btnBack.Clicked += new EventHandler (on_btnBack_clicked);
               Button btnForward = new Button (Gtk.Stock.GoForward);
               btnForward.Clicked += new EventHandler (on_btnForward_clicked);
               Button btnStop = new Button (Gtk.Stock.Stop);
               btnStop.Clicked += new EventHandler (on_btnStop_clicked);
               Button btnRefresh = new Button (Gtk.Stock.Refresh);
               btnRefresh.Clicked += new EventHandler (on_btnRefresh_clicked);
               tb.Add (btnBack);
               tb.Add (btnForward);
               tb.Add (btnStop);
               tb.Add (btnRefresh);
               
               vbox.PackStart (tb, false, false, 1);
               
               HBox hbox = new HBox (false, 1);
               
               Label label = new Label ("Address:");
               
               entry = new Entry ("URL");
               entry.Activated += new EventHandler (entry_activated);
               
               Button button = new Button ("GO!");
               button.Clicked += new EventHandler (button_clicked);
               
               hbox.PackStart (label, false, false, 1);
               hbox.PackStart (entry, true, true, 1);
               hbox.PackStart (button, false, false, 1);
               
               vbox.PackStart (hbox, false, false, 1);
               
               moz = new WebControl ("/tmp/csharp", "GeckoTest");
               moz.LinkMsg += new EventHandler(on_moz_linkmessage);
               vbox.PackStart(moz, true, true, 1);
               
               HBox hbox2 = new HBox (false, 1);
               vbox.PackStart (hbox2, false, false, 1);
               
               sb = new Statusbar ();
               sb.Push (1, "Welcome!");
               hbox2.Add (sb);
               
               pb = new ProgressBar ();
               pb.Orientation = ProgressBarOrientation.LeftToRight;
               hbox2.Add (pb);
               
               win.ShowAll ();
               
               Application.Run ();
          }
          
          void window_delete (object obj, DeleteEventArgs args)
          {
               Application.Quit();
          }
          
          void button_clicked (object obj, EventArgs args)
          {
               LoadHtml (entry.Text.Trim());
          }
          
          void on_moz_linkmessage (object obj, EventArgs args)
          {
               sb.Pop (1);
               sb.Push (1, moz.LinkMessage);
          }
          
          void entry_activated (object obj, EventArgs args)
          {
               button_clicked (obj, args);
          }
          
          void LoadHtml (string URL)
          {
               moz.LoadUrl (URL);
          }
          
          void on_btnBack_clicked (object obj, EventArgs args)
          {
               moz.GoBack();
          }

          void on_btnStop_clicked (object obj, EventArgs args)
          {
               moz.StopLoad();
          }

          void on_btnForward_clicked (object obj, EventArgs args)
          {
               moz.GoForward();
          }

          void on_btnRefresh_clicked (object obj, EventArgs args)
          {
               moz.Reload(0);
          }     
     }
}

Namespace: Gecko
Assembly: gecko-sharp 2.0.0.0 (in gecko-sharp.dll)
相关阅读 更多 +
排行榜 更多 +
试着飞手游下载

试着飞手游下载

休闲益智 下载
血染小镇(功能菜单)中文版下载

血染小镇(功能菜单)中文版下载

飞行射击 下载
泰坦之旅高爆版下载

泰坦之旅高爆版下载

角色扮演 下载