Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tabla de contenidos
Crear tu primera aplicación GUI
Crear un widget label (etiqueta)
o Establecer tamaño de fuente de etiqueta
o Establecer el tamaño de una ventana
Agregar un widget button
o Cambiar los colores de fondo y primer plano de un botón
o Manejar el evento click de un botón
Entrada de datos usando la clase Entry (Tkinter textbox)
o Establecer el foco en el widget de entrada
o Deshabilitar el widget de entrada
Agregar un widget combobox
Agregar un widget Checkbutton (Tkinter checkbox)
o Establecer el estado de un Checkbutton
Agregar widgets radio button
o Obtener el valor del radio button (opción seleccionada)
Adicionar un widget ScrolledText (Tkinter textarea)
o Establecer el contenido del scrolledtext
o Borrar/limpiar el contenido de un scrolledtext
Crear un MessageBox
o Mostrar mensajes de error y de advertencia
o Mostrar diálogos de pregunta-respuesta
Agregar un SpinBox (widget de números)
o Establecer el valor por defecto del Spinbox
Adicionar el widget Progressbar
o Cambiar el color de un Progressbar
Adicionar un diálogo para archivos (elegir archivo y directorio)
o Especificar los tipos de archivo (filtro por la extensión del archivo)
Adicionar una barra de menú
Adicionar un widget Notebook (control de pestañas)
o Agregar widgets a las pestañas
Adicionar espacio para los widgets (separación o padding)
Ad by Valueimpression
from tkinter import *
window = Tk()
lbl.grid(column=0, row=0)
window.mainloop()
Y este es el resultado:
window = Tk()
window.geometry('350x200')
lbl.grid(column=0, row=0)
btn.grid(column=1, row=0)
window.mainloop()
window = Tk()
window.geometry('350x200')
lbl = Label(window, text="Hello")
lbl.grid(column=0, row=0)
def clicked():
btn.grid(column=1, row=0)
window.mainloop()
¡Buenísimo!
window = Tk()
window.geometry('350x200')
lbl.grid(column=0, row=0)
txt = Entry(window,width=10)
txt.grid(column=1, row=0)
def clicked():
btn.grid(column=2, row=0)
window.mainloop()
lbl.configure(text= res)
window = Tk()
window.geometry('350x200')
lbl.grid(column=0, row=0)
txt = Entry(window,width=10)
txt.grid(column=1, row=0)
def clicked():
lbl.configure(text= res)
window.mainloop()
¡Increíble!
combo = Combobox(window)
window = Tk()
window.geometry('350x200')
combo = Combobox(window)
window.mainloop()
window.geometry('350x200')
chk_state = BooleanVar()
chk.grid(column=0, row=0)
window.mainloop()
Verifica el resultado:
chk_state.set(0) #uncheck
chk_state.set(1) #check
window = Tk()
window.geometry('350x200')
rad1.grid(column=0, row=0)
rad2.grid(column=1, row=0)
rad3.grid(column=2, row=0)
window.mainloop()
Aquí un ejemplo:
rad1 = Radiobutton(window,text='First', value=1, command=clicked)
def clicked():
¡Bastante simple!
window = Tk()
selected = IntVar()
def clicked():
print(selected.get())
rad1.grid(column=0, row=0)
rad2.grid(column=1, row=0)
rad3.grid(column=2, row=0)
btn.grid(column=3, row=0)
window.mainloop()
txt = scrolledtext.ScrolledText(window,width=40,height=10)
Aquí especificamos el ancho y el alto del widget ScrolledText, de
lo contrario, rellenará toda la ventana.
from tkinter import *
window = Tk()
window.geometry('350x200')
txt = scrolledtext.ScrolledText(window,width=40,height=10)
txt.grid(column=0,row=0)
window.mainloop()
¡Grandioso!
Crear un MessageBox
Para mostrar un cuadro de mensaje usando Tkinter, puedes usar
la librería messagebox , de esta manera:
from tkinter import messagebox
¡Bastante simple!
window = Tk()
window.geometry('350x200')
def clicked():
btn.grid(column=0,row=0)
window.mainloop()
Cuando hagas click en el botón, un cuadro de mensajes
informativo aparecerá.
window = Tk()
window.geometry('350x200')
spin.grid(column=0,row=0)
window.mainloop()
var.set(36)
window = Tk()
window.geometry('350x200')
style = ttk.Style()
style.theme_use('default')
style.configure("black.Horizontal.TProgressbar", background='black')
bar['value'] = 70
bar.grid(column=0, row=0)
window.mainloop()
file = filedialog.askopenfilename()
¡Fácil!
menu = Menu(window)
menu.add_command(label='File')
window.config(menu=menu)
window = Tk()
new_item = Menu(menu)
new_item.add_command(label='New')
menu.add_cascade(label='File', menu=new_item)
window.config(menu=menu)
window.mainloop()
window = Tk()
menu = Menu(window)
new_item = Menu(menu)
new_item.add_command(label='New')
new_item.add_separator()
new_item.add_command(label='Edit')
menu.add_cascade(label='File', menu=new_item)
window.config(menu=menu)
window.mainloop()
window = Tk()
tab_control = ttk.Notebook(window)
tab1 = ttk.Frame(tab_control)
tab_control.add(tab1, text='First')
tab_control.pack(expand=1, fill='both')
window.mainloop()
window = Tk()
tab_control = ttk.Notebook(window)
tab1 = ttk.Frame(tab_control)
tab2 = ttk.Frame(tab_control)
tab_control.add(tab1, text='First')
tab_control.add(tab2, text='Second')
lbl1.grid(column=0, row=0)
lbl2.grid(column=0, row=0)
tab_control.pack(expand=1, fill='both')
window.mainloop()
¡Así de simple!