PyGTK

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
PyGTK
Desarrollador
PyGTK Core development team
http://www.pygtk.org/
Información general
Última versión estable 2.24.0
1 de abril de 2011; hace 3 años (2011-04-01)
Género Widget toolkit
Sistema operativo Multiplataforma
Licencia LGPL
[editar datos en Wikidata ]

PyGTK es un binding de la biblioteca gráfica GTK para el lenguaje de programación Python. La biblioteca GTK se usa para desarrollar el entorno gráfico GNOME, así como sus aplicaciones, a la vez que algunos otros entornos gráficos. La biblioteca GTK permite el desarrollo sencillo de interfaces gráficas y su uso conjunto con Python permite el desarrollo rápido de aplicaciones gráficas potentes.

Ejemplos[editar]

A continuación se muestran algunos ejemplos del uso de PyGTK

Hola Mundo[editar]

El código siguiente producirá una ventana de 200x200 píxeles con las palabras "Hola mundo" en el interior.

import gtk
 
def crear_ventana():
    ventana = gtk.Window()
    ventana.set_default_size(200, 200)
    ventana.connect('destroy', gtk.main_quit)
 
    etiqueta = gtk.Label('Hola mundo')
    ventana.add(etiqueta)
 
    etiqueta.show()
    ventana.show()
 
crear_ventana()
gtk.main()

Para que el script se pueda ejecutar en un sistema *nix, la primera línea debe ser "#!/usr/bin/env python" o "#!/usr/bin/python" para inidicar donde se encuentra el intérprete. Además, el script debe disponer de permisos de ejecución.

Juego del 15[editar]

El siguiente programa es una implementación del juego del 15 que consiste en una ventana y botones que cambiarán su posición conforme se opriman.

import gtk
from random import shuffle
 
def callback(boton):
    (x, y), (bx, by) = boton.posicion, blanco.posicion
    if (x-bx, y-by) in [(-1,0), (1,0), (0,1), (0,-1)]:
        tabla.remove(boton)
        tabla.remove(blanco)
        tabla.attach(boton, bx, bx+1, by, by+1)
        tabla.attach(blanco, x, x+1, y, y+1)
        boton.posicion = (bx, by)
        blanco.posicion = (x, y)
 
tam     = 4
ventana = gtk.Window()
botones = [gtk.Button(str(i)) for i in range(1, tam * tam)]
blanco  = gtk.Button()
tabla   = gtk.Table(tam, tam, homogeneous=True)
 
shuffle (botones)
 
(x, y) = (0, 0)
for i in botones + [blanco]:
    if x == tam: x = 0; y += 1
    i.connect('clicked', callback)
    i.posicion = (x, y)
    tabla.attach(i, x, x+1, y, y+1)
    x += 1
 
ventana.connect('destroy', gtk.main_quit)
ventana.add(tabla)
ventana.set_title('Juego del '+str(tam*tam-1))
ventana.show_all()
blanco.hide()
gtk.main()

Note que es posible variar la cantidad de botones de la ventana cambiando el valor de 'tam'. El número de botones será 'tam*tam-1'. Para poder ejecutar éste script, se deberán seguir los pasos mencionados en el ejemplo anterior.

Aplicaciones que usan PyGTK[editar]

PyGTK se utiliza en algunos proyectos relevantes, por ejemplo:

Véase también[editar]

Enlaces externos[editar]