Ejemplos de Python Tkinter

Ejemplos De Python Tkinter



Python es un lenguaje de programación versátil que se puede utilizar para implementar diferentes tipos de aplicaciones. Tiene muchos tipos de módulos para crear aplicaciones basadas en GUI (interfaz gráfica de usuario). Python tkinter es uno de ellos. Cualquier aplicación de escritorio se puede implementar fácilmente utilizando el módulo tkinter. Será mejor si tiene conocimientos básicos de programación en Python para aprender los usos del módulo tkinter de Python. En este tutorial se muestran diferentes usos del módulo tkinter de Python para crear aplicaciones GUI.

Instalar el módulo Tkinter

El módulo tkinter no está instalado en Python de forma predeterminada. Entonces, debe ejecutar el siguiente comando para instalar el módulo tkinter en la versión Python 3+:







$ sudo apto instalar python3-tk

 



Diferentes widgets de Tkinter

El módulo tkinter contiene varios widgets para diversos fines.



 





Nombre del widget Objetivo
Etiqueta Se utiliza para mostrar el mensaje de ayuda para el usuario.
Botón Se utiliza para agregar diferentes botones en la aplicación.
Marco Funciona como un contenedor de widgets que contiene diferentes tipos de widgets para diseñar un formulario organizado.
Entrada Se utiliza para tomar un texto de una sola línea del usuario.
botón de verificación Se utiliza para agregar botones de casilla de verificación para recibir múltiples entradas del usuario desde múltiples opciones.
Boton de radio Se utiliza para agregar botones de opción para recibir una sola entrada del usuario entre múltiples opciones.
Botón de cuadro combinado Se utiliza para agregar una lista desplegable para tomar una única entrada del usuario entre múltiples opciones.
Cuadro de lista Se utiliza para agregar un cuadro de lista para recibir múltiples entradas del usuario desde múltiples opciones.
Texto Se utiliza para recibir un texto de varias líneas del usuario.
Mensaje Se utiliza para mostrar la ventana de mensaje para el usuario.
Barra de desplazamiento Se utiliza para agregar una barra de desplazamiento en la ventana para desplazarla hacia arriba y hacia abajo.
Botón de menú Se utiliza para mostrar el menú al usuario.
Menú Se utiliza para mostrar los elementos del menú al usuario.
Ventana panorámica Funciona como un contenedor de widgets que contiene los paneles horizontales y verticales.
Pestañas Se utiliza para agregar una ventana de pestaña en la aplicación.

Diferentes ejemplos de Tkinter

Los usos de algunos widgets tkinter comunes se muestran en los siguientes ejemplos.

Ejemplo 1: crear una aplicación GUI sencilla

Cree un archivo Python con el siguiente contenido que muestre un cuadro de diálogo en el centro de la pantalla con un título y la altura y el ancho particulares:



#Importar módulo necesario
desde la importación de tkinter *

#Crear objeto para la ventana
tkobj = Tk ( )

#Establecer el título de la ventana.
tkobj.título ( 'Aprenda el módulo tkinter' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '300x150' )

#Establezca la posición de visualización de la ventana centralmente
tkobj.eval ( 'tk::PlaceWindow. centro' )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

El siguiente resultado aparece después de ejecutar el script. Se muestra un cuadro de diálogo con el título “Aprender módulo tkinter”:

Ejemplo 2: uso de etiqueta y botón

Cree un archivo Python con el siguiente script que muestra una ventana con una etiqueta y un cuadro de diálogo:

#Importar módulo necesario
desde la importación de tkinter *

#Crea un objeto para la ventana.
tkobj = Tk ( )

#Establecer el título de la ventana.
tkobj.título ( 'Aprenda el módulo tkinter' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '400x150' )

#Definir objeto de etiqueta
lbl = Etiqueta ( tkobj, texto = 'Es una ventana sencilla' )
#Agregar etiqueta a la ventana
paquete de libras ( ipadx = 30 , ipads = 20 )

#Definir objeto de botón
botón = Botón ( tkobj, texto = 'Haz click en mi' )
#Agregar botón a la ventana con la posición
btn.paquete ( ipadx = 30 , ipads = 10 )

#Establezca la posición de visualización de la ventana centralmente
tkobj.eval ( 'tk::PlaceWindow. centro' )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

Aparece una ventana con una etiqueta y un botón en el centro de la pantalla después de ejecutar el script.

Ejemplo 3: establecer el color de fuente y el color de fondo

Cree un archivo Python con el siguiente script que muestra una ventana con una etiqueta y un botón colorido. Aquí, el atributo de fondo se usa para establecer el color de fondo del botón y el atributo de primer plano se usa para establecer el color de fuente del botón:

#Importar módulo necesario
desde la importación de tkinter *

#Crea un objeto para la ventana.
tkobj = Tk ( )

#Establecer el título de la ventana.
tkobj.título ( 'Aprenda el módulo tkinter' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '400x150' )

#Definir objeto de etiqueta
lbl = Etiqueta ( tkobj, texto = 'Establecer color de fondo y primer plano' )
#Agregar etiqueta a la ventana
paquete de libras ( ipadx = 30 , ipads = 20 )

#Definir objeto de botón con color de fondo y primer plano
botón = Botón ( tkobj, texto = 'Haz click en mi' , fondo = 'azul' , primer plano = 'rojo' )
#Agregar botón a la ventana con la posición
btn.paquete ( ipadx = 30 , ipads = 8 )

#Establezca la posición de visualización de la ventana centralmente
tkobj.eval ( 'tk::PlaceWindow. centro' )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

La siguiente ventana aparece después de ejecutar el script:

Ejemplo 4: uso de marco

En el siguiente script de Python, se muestran una etiqueta y dos botones dentro de un widget de marco. Cree un archivo Python con el script para verificar el resultado:

#Importar módulo necesario
desde la importación de tkinter *

#Crea un objeto para la ventana.
tkobj = Tk ( )

#Establecer el título de la ventana
tkobj.título ( 'Módulo tkinter' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '250x100' )

#Definir objetos de marco
frm = marco ( tkobj )
frm.paquete ( )
lframe = marco ( tkobj )
lframe.paquete ( lado =IZQUIERDA )
marcor = marco ( tkobj )
rframe.paquete ( lado =DERECHA )

#Definir etiqueta dentro del marco
lbl = Etiqueta ( desde, texto = 'Uso del marco' , fg = 'azul' )
paquete de libras ( )

#Definir botones dentro del marco
btn1 = Botón ( marco l, texto = '' , fg = 'negro' , bg = 'blanco' )
btn2.paquete ( lado =DERECHA )

#Establezca la posición de visualización de la ventana centralmente
tkobj.eval ( 'tk::PlaceWindow. centro' )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

El siguiente resultado aparece después de ejecutar el script:

Ejemplo 5: Manejar el evento del botón

El uso del cuadro de mensaje se muestra en el siguiente script. El cuadro de mensaje se muestra cuando se hace clic en un botón:

#Importar módulos necesarios
desde la importación de tkinter *
desde el cuadro de mensajes de importación de tkinter

#Crea un objeto para la ventana.
tkobj = Tk ( )

#Establecer el título de la ventana
tkobj.título ( 'Aprenda el módulo tkinter' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '400x150' )

#Defina una función para mostrar un cuadro de mensaje
pantalla definida ( ) :
cuadro de mensajes.showinfo ( 'Información' , 'Se hizo clic en el botón'. )

#Crear texto de etiqueta con color, estilo y posición de fuente
Etiqueta ( tkobj, texto = 'Aplicación de escritorio usando tkinter'. , fg = 'verde' ) .embalar ( Arrozal = 25 )

#Crear un botón con un controlador de botones
Botón ( tkobj, texto = 'Mostrar mensaje' , dominio = mostrar ) .embalar ( )

#Establezca la posición de visualización de la ventana centralmente
tkobj.eval ( 'tk::PlaceWindow . centro' )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

La siguiente ventana aparece después de ejecutar el script:

El siguiente cuadro de mensaje aparece después de presionar el botón:

Ejemplo 6: recibir una entrada del usuario

Hay varios widgets disponibles en el módulo tkinter para recibir información del usuario. Los usos de los widgets más comunes se muestran en el siguiente script. Cree un archivo Python con el siguiente código para verificar el resultado:

#Importar módulos necesarios
desde la importación de tkinter *
desde tkinter.ttk importar cuadro combinado
desde tkinter importar ttk
importar tkinter como tk
desde el cuadro de mensajes de importación de tkinter

#Crear objeto tkinter
tkobj = Tk ( )

#Establecer el título de la ventana.
tkobj.título ( 'Formulario de información del usuario' )

#Establecer la altura y el ancho de la ventana.
tkobj.geometria ( '550x320' )

#Defina una función para mostrar los valores del formulario
def mostrar_valores ( ) :
    #Leer texto de una sola línea
nombre = 'Nombre : ' + nombre_val.get ( ) + ' \norte '
    #Leer el valor del botón de radio seleccionado
    si género.get ( ) == 1 :
gramo = 'Masculino'
demás:
gramo = 'Femenino'
gramo = 'Género : ' + g + ' \norte '

    #Leer los valores de las casillas de verificación seleccionadas
juego = ''
    si g1.obtener ( ) == 1 :
juego = 'Grillo'
    si g2.obtener ( ) == 1 :
        si juego ! = '' :
juego += ', ' + 'Fútbol americano'
demás:
juego = 'Fútbol americano'
    si g3.obtener ( ) == 1 :
        si juego ! = '' :
juego += ', ' + 'Baloncesto'
demás:
juego = 'Baloncesto'
juego = 'Juego : ' + juego + ' \norte '

    #Leer los valores del cuadro combinado
país = 'País : ' + paísVal.get ( ) + ' \norte '
    #Leer el texto de varias líneas
dirección = 'DIRECCIÓN : ' + dirección.obtener ( '1.0' , 'fin' ) + ' \norte '
    #Fusionar todos los valores tomados por los campos.
form_values ​​= nombre + g + juego + país + dirección
    #Mostrar los valores en el cuadro de mensaje.
cuadro de mensajes.showinfo ( 'Detalles de información del usuario' , valores_formulario )


#Crea una etiqueta y el campo de nombre.
Etiqueta ( tkobj, texto = 'Nombre : ' ) .lugar ( X = 100 , y = 20 )
nombre_val = StringVar ( )
ttk.Entrada ( tkobj, variable de texto =nombre_val ) .embalar ( padx = 220 , Arrozal = 20 )

#Crea una etiqueta y el botón de opción.
Etiqueta ( tkobj, texto = 'Género : ' ) .lugar ( X = 100 , y = 60 )
género = IntVar ( )
género.set ( 1 )
Boton de radio ( tkobj, texto = 'Masculino' , variable =género, valor = 1 ) .lugar ( X = 210 , y = 60 )
Boton de radio ( tkobj, texto = 'Femenino' , variable =género, valor = 2 ) .lugar ( X = 290 , y = 60 )

#Crear una etiqueta y un botón de casilla de verificación
Etiqueta ( tkobj, texto = 'Juego favorito : ' ) .lugar ( X = 100 , y = 100 )
g1 = VarInt ( )
g2 = VarInt ( )
g3 = VarInt ( )
botón de verificación ( tkobj, texto = 'Grillo' , variable =g1 ) .lugar ( X = 210 , y = 100 )
botón de verificación ( tkobj, texto = 'Fútbol americano' , variable =g2 ) .lugar ( X = 290 , y = 100 )
botón de verificación ( tkobj, texto = 'Baloncesto' , variable =g3 ) .lugar ( X = 380 , y = 100 )

#Definir valores de tupla
datos = ( 'Bangladés' , 'Japón' , 'EE.UU' )
#Crear etiqueta y cuadro combinado
Etiqueta ( tkobj, texto = 'País : ' ) .lugar ( X = 100 , y = 140 )
countryVal = StringVar ( )
Caja combo ( tkobj, valores =datos, variable de texto =ValPaís ) .lugar ( X = 220 , y = 140 )

#Crear etiqueta y campo de texto
Etiqueta ( tkobj, texto = 'DIRECCIÓN : ' ) .lugar ( X = 100 , y = 180 )
dirección = ( tk.Texto ( tkobj, altura = 3 , ancho = 20 ) )
addr.place ( X = 220 , y = 180 )

#Crear un botón con un controlador de botones
Botón ( tkobj, texto = 'Entregar' , dominio = mostrar_valores ) .lugar ( X = 250 , y = 250 )

#Ejecuta el Tkinter
tkobj.mainloop ( )

 

Producción:

La siguiente ventana aparece después de ejecutar el script:

Llene los campos del formulario y presione el botón “Enviar”.

Aparecerá el siguiente cuadro de mensaje con los valores enviados:

Conclusión

Los métodos de uso del módulo tkinter de Python para crear aplicaciones GUI se muestran en este tutorial utilizando varios ejemplos.