TKINTER PARA PYTHON
Curso de interfaces gráficas
Aprende a realizar aplicaciones de Python para escritorio
En el siguiente código QR tendrás acceso a los videotutoriales
publicados en YouTube del canal Programación Fácil.
Pere Manel Verdugo Zamora
pereverdugo@gmail.com
Capítulo 1: Ventana gráfica
Tkinter es una librería que ya viene instalada en Python.
En la línea 4 creamos un objeto llamado toot con la clase Tk() de Tkinter.
En la línea 5 el .mainloop() hace que se refresque la ventana constantemente, si no la ponemos
cuando ejecutemos esta se cerrará después de ejecutarse.
Con esto tan simple ya tenemos la primera ventana:
Aparecerá con un tamaño y título por defecto.
Si no queremos tener que hacer referencia al alias tk podemos importar de este modo, como
verás en la línea 4 ya podemos omitir tk. y escribir directamente Tk().
Ahora vamos a agregar un texto por mediación de una etiqueta.
P á g i n a 1 | 88
En la línea 5 definimos un objeto llamado etiqueta, que será de la clase tkinter el método Label,
como parámetros donde tiene que ir root y el texto que tiene que tener.
En la línea 6 le estamos diciendo que se ajuste a la ventana.
Este será el resultado:
P á g i n a 2 | 88
Capítulo 2: ¿Qué son los widgets? – El widget Frame() y el método
pack()
Cuando ejecutemos este será el resultado:
Vamos a personalizar el tamaño.
Vamos a ejecutar:
P á g i n a 3 | 88
Al dar unas dimensiones al marco la ventana se redimensiona para que pueda entrar el marco.
Vamos a poner un fondo de color rojo.
Vamos a ejecutar:
El widget Frame()
P á g i n a 4 | 88
Este será el resultado:
P á g i n a 5 | 88
Capítulo 3: El método grid()
En el momento de utilizar el método pack() el orden es importante.
Vamos a cambiar el orden.
P á g i n a 6 | 88
Este será el resultado:
Otro ejemplo:
P á g i n a 7 | 88
Este será el resultado:
Vamos a ver la diferencia con grid():
P á g i n a 8 | 88
Este será el resultado:
P á g i n a 9 | 88
Otro ejemplo:
from tkinter import *
root = Tk()
# Marco 1
marco_principal1 = Frame()
marco_principal1.grid(row=0, column=0)
marco_principal1.config(width="100", height="100")
marco_principal1.config(bg="red")
# Marco 2
marco_principal2 = Frame()
marco_principal2.grid(row=1, column=0)
marco_principal2.config(width="100", height="100")
marco_principal2.config(bg="blue")
# Marco 3
marco_principal3 = Frame()
marco_principal3.grid(row=1, column=1)
marco_principal3.config(width="100", height="100")
marco_principal3.config(bg="yellow")
# Marco 4
marco_principal4 = Frame()
marco_principal4.grid(row=2, column=0)
marco_principal4.config(width=100, height="100")
marco_principal4.config(bg="green")
root.mainloop()
Este será el resultado:
P á g i n a 10 | 88