Interfaces gráficas

Anuncio
Interfaces gráficas
Programación
http://progra.usm.cl
Crear una ventana
from Tkinter import *
w = Tk()
# ...
w.mainloop()
Widgets
Etiqueta (Label):
muestra información.
Botón (Button):
activa eventos.
Entrada (Entry):
permite ingresar información.
Crear y agregar widgets
from Tkinter import *
w = Tk()
l = Label(w, text='Hola progra')
l.pack()
b1 = Button(w, text='Saludar')
b1.pack()
b2 = Button(w, text='Salir')
b2.pack()
w.mainloop()
Controladores
from Tkinter import *
def saludar():
print 'Hola'
w = Tk()
l = Label(w, text='Hola progra')
l.pack()
b1 = Button(w, text='Saludar', command=saludar)
b1.pack()
b2 = Button(w, text='Salir', command=exit)
b2.pack()
w.mainloop()
Modelos
from Tkinter import *
w = Tk()
l1 = Label(w, text='Texto estatico')
l1.pack()
v = StringVar()
l2 = Label(w, textvariable=v)
l2.pack()
v.set('Texto variable')
s = v.get()
w.mainloop()
Ejercicio 1
Escriba un programa con la siguiente interfaz.
Cada vez que se haga clic en el botón +1 ,
el número mostrado debe aumentar:
−→
−→
Al hacer clic en el botón Salir ,
el programa debe terminar.
−→
Entrada de datos
from Tkinter import *
w = Tk()
v = StringVar()
e = Entry(w, textvariable=v)
e.pack()
def imprimir():
print v.get()
def cambiar():
v.set('Hola')
w.mainloop()
Conceptos
Controlador:
función que es invocada
cuando se hace clic en un botón.
Modelo:
información que puede cambiar
durante la ejecución del programa.
Ejercicio 2
Escriba un programa con la siguiente interfaz:
−→
Mayusculizar debe convertir el texto a mayúsculas.
Minusculizar debe convertir el texto a minúsculas.
Limpiar debe borrar el texto.
Ejercicio 3
Escriba un programa que convierta
grados Fahrenheit a Celsius:
La fórmula es: C =
5
· (F − 32)
9
Ejercicio 4
Escriba un programa como el siguiente:
Descargar