Actualizado el 21 de Marzo del 2018 (Publicado el 8 de Marzo del 2018)
542 visualizaciones desde el 8 de Marzo del 2018
511,0 KB
31 paginas
Creado hace 18a (14/11/2005)
Desarrollo de aplicaciones Python-GTK
Jes´us Espino Garc´ıa
23 de Noviembre de 2005
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
2 / 1
Contenidos
Introducci´on.
Conceptos b´asicos.
Interfaces.
Algo de c´odigo.
Ejemplos.
Referencias.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
3 / 1
Introducci´on.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
4 / 1
¿Por qu´e PyGTK?
Es Python!!
Es totalmente libre (Python y GTK).
Es r´apido de aprender.
Es r´apido de desarrollar.
Bien documentado.
Lo aprendido sirve para otros lenguajes.
Es bonito.
Es multi plataforma (Python y GTK)
Si usamos glade, separaci´on de la interfaz del c´odigo
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
5 / 1
¿Por qu´e no?
Es Python :(
Ejecuci´on interpretada (lenta)
Proyectos muy grandes (problemas de gran escala)
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
6 / 1
¿Qu´e necesitamos?
python: Interprete de python.
python-gtk: Libreria de python GTK.
glade: Aplicaci´on de dise˜no de interfaces GTK.
devhelp: Con el libro de GTK+ una buena referencia.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
7 / 1
Conceptos b´asicos.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
8 / 1
Widgets
Los objetos con los que trabajeremos en GTK
Ventanas.
Cajas.
Botones.
Entradas.
Etiquetas.
Listas.
Checkboxes.
Otros...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
9 / 1
Contenedores
Widgets que cotienen otros widgets
Ventana.
Cajas.
Notebooks.
Otros...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
10 / 1
Se˜nales
Eventos que se producen sobre un widget.
Clicks.
Pulsado de tecla.
Destruir.
Entrar en el area del widget.
Salir de area del widget.
Moviemiento de raton.
Otros...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
11 / 1
Manejadores
Funciones o metodos que gestionan una se˜nal, es decir, cualquier funci´on o
metodo definido que se enlaza a la se˜nal de un objeto.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
12 / 1
Interfaces.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
13 / 1
Glade y Gazpacho
Interfaz de dise˜no de interfaces.
Es XML.
Es Grafico.
Es GTK.
No pierdes control.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
14 / 1
Glade
Interfaz mas popular pues fue el primero en salir en este campo y utiliza
varias ventanas para realizar su trabajo.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
15 / 1
Gazpacho
Interfaz alternativo, menos utilizado pero una opci´on m´as y utiliza una
´unica ventanas para realizar su trabajo.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
16 / 1
Algo de c´odigo.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
17 / 1
B´asico
import gtk
window = gtk.Window()
window.show()
gtk.main()
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
18 / 1
Insertando algun widget
...
button = gtk.Button()
button.show()
window.add(button)
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
19 / 1
Cambiando informaci´on de un widget.
...
button.set_label("Pulse Aqui")
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
20 / 1
Conectando una se˜nal
...
button.connect("clicked",boton_clickeado)
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
21 / 1
Definiendo un manejador
...
def boton_clickeado(widget):
print "hola mundo"
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
22 / 1
Importar un interfaz generado
...
xml = gtk.glade.XML("ruta/archivo.glade")
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
23 / 1
Conectar las se˜nales
...
xml.signal_autoconnect(locals())
...
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
24 / 1
Ejemplos.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
25 / 1
Mozilla en 30 lineas
Ejemplo de insertar un gecko en una aplicaci´on GTK
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
26 / 1
Sumadora
Ejemplo de una sumadora que utiliza un XML de glade para generar el
interfaz.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
27 / 1
Para terminar.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
28 / 1
Referencias
¿Por d´onde empezar?
http://www.pygtk.org: Referencia completa.
¿D´onde preguntar?
Lista de correo de pygtk.
Lista de correo de python.
Listas de distribuci´on de grupos de usuarios de Linux.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
29 / 1
Dudas
. . .
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
30 / 1
Agradecimientos
Gracias a Pablo Barrera por la charla de Python GTK con la que
empec´e con esto.
Gracias al equipo de LUC3M por permitirme trabajar en un proyecto
tan interesante.
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
31 / 1
Fin
Jes´us Espino Garc´ıa (UC3M)
Desarrollo de aplicaciones Python-GTK
23 de Noviembre de 2005
32 / 1
Comentarios de: Desarrollo de aplicaciones Python-GTK (0)
No hay comentarios