Actualmente trabajo en un pequeño proyecto de iniciativa propia, este proyecto lo tengo pensado desde hace tiempo y es muy grato para mi empezar a ver resultados. Uno de los objetivos principales que me plantee en la realización de este proyecto es: aprender de forma practica a desarrollar aplicaciones graficas en plataformas libres (Mono y GNOME) utilizando principalmente C# y Gtk# como lenguajes de desarrollo.

La idea inicial era hacerlo todo a patin declarando cada control que iba a utilizar en mi interface para poder conocer un poco más de la forma en que se trabaja con Gtk#, pero bueno es una chinga cuando ya es una aplicacion que utiliza muchos controles o widgets. Bueno para no hacerla larga empece a armar la interface a mano pero despues opte por utilizar un diseñador de interfaces llamado Glade el cual es muy parecido al diseñador de interfaces que utiliza el VisualStudio en Windows. Al principio no queria utilizarlo porque no queria que mi aplicación dependiera de el porque pensaba que sería más lenta que si lo hacia con puro codigo, pero al hacer algunas pruebas de tiempo resulto ser que hacerlo de esta manera es muy rapido también tanto a la hora de diseño como a la de ejecución.

Bueno después de crear la interfece con glade tuve que modificar mi codigo un buen quitarle varias lineas que le sobraban, porque esa es otra de sus ventajas se ahorra uno un buen de codigo. Y bueno de tener un codigo como este:


      ventana = new Gtk.Window ("Programa");
      ventana.DeleteEvent += new DeleteEventHandler (Salir);
      ventana.SetDefaultSize (260, 320);

      icono = new Gdk.Pixbuf ("icon.png");
      ventana.Icon = icono;

      VBox vb = new VBox ();
      vb.SetSizeRequest(260,320);
      vb.BorderWidth = 2;
      vb.Spacing = 10;

      Frame frame = new Frame();
      vb.Add (frame);
      ventana.Add (vb);

      web = new WebControl();
      web.LoadUrl(translate);
      web.Show();

      frame.Add(web);

      ventana.Resizable = false;

Me quedo algo como este:
 Glade.XML gxml = new Glade.XML("archivo.glade", "win", null );
 gxml.Autoconnect( this );

 web = new WebControl();
 web.Show();

 frame1.Add(web);

El codigo del programa que estoy haciendo lo liberare en los proximos dias y estara bajo la licencia GPL o BSD, también lo subire a algun sevidor de CVS o SVN por si a alguien le interesa contribuir en el.

Bookmark the permalink. RSS feed for this post.

One Response to

deimos dijo...

Segunda llamada...

Con tecnología de Blogger.

Search

Swedish Greys - a WordPress theme from Nordic Themepark. Converted by LiteThemes.com.