Skip to content

6 abril, 2010

Python, Glade y Gtkbuilder (01)

votar

Hasta ahora todo lo que había hecho con Python eran scripts, pero nunca me había atrevido hasta este fin de semana, a intentarlo con interfaces gráficos. Y de lo sencillo que me ha parecido me da hasta cosa. Cierto es que, tardé unas horas hasta que di con la solución adecuada, pero es que una vez encontrada esto parece que va como un tiro.

Así que me he decidido a publicar unos cuantos artículos en los que voy a implementar (en vivo y en directo -más o menos-) en Python la aplicación Equival, que hice y mantengo en Java.

La imagen a continuación es el diseño con Glade de una ventana de dialogo sencilla, para que veais lo sencillo que resulta el tema:

Thumbnail image

y el resultado:

Thumbnail image

Este es el código correspondiente a la ventana de diálogo para que haga las funciones básicas, aparecer, desaparecer y alguna que otra tontería. Todo esto en nada. Una maravilla.


import sys

import gtk

class Ventana:
<p style="padding-left: 30px;">def __init__(self):</p>
<p style="padding-left: 60px;">self.builder = gtk.Builder()
self.builder.add_from_file(`tutorial.glade`)
self.window = self.builder.get_object(`window`)
self.entry1 = self.builder.get_object(`entry1`)
self.entry2 = self.builder.get_object(`entry2`)
self.window.show_all()
# Magia :P
self.builder.connect_signals(self)</p>
<p style="padding-left: 30px;">def on_button1_clicked(self, widget):</p>
<p style="padding-left: 60px;">print "boton1"</p>
<p style="padding-left: 30px;">def on_button2_clicked(self, widget):</p>
<p style="padding-left: 60px;">print "boton2"</p>
<p style="padding-left: 30px;">def on_window_destroy(self,widget):</p>
<p style="padding-left: 60px;">sys.exit(0)</p>
<p style="padding-left: 30px;">def on_entry1_changed(self,widget):</p>
<p style="padding-left: 60px;">self.entry2.set_text(self.entry1.get_text())</p>
if __name__ == `__main__`:
<p style="padding-left: 30px;">v = Ventana()
gtk.main()</p>

Popularity: 6% [?]

Artículos relacionados...

  1. Python, Glade y Gtkbuilder (05)
  2. Python, Glade y Gtkbuilder (04)
  3. Python, Glade y Gtkbuilder (02)
  4. Macro para borrar filas con la primera celda vacia
  5. Python, Glade y Gtkbuilder (03)
Read more from Python

Bad Behavior has blocked 3283 access attempts in the last 7 days.

Easy AdSense by Unreal