Crear tabla usando Tkinter

Python ofrece múltiples opciones para desarrollar una GUI (interfaz gráfica de usuario). De todos los métodos GUI, Tkinter es el método más utilizado. Es una interfaz estándar de Python para el kit de herramientas Tk GUI que se envía con Python. Python con Tkinter es la forma más rápida y sencilla de crear aplicaciones GUI. Crear una GUI usando Tkinter es una tarea fácil.
Nota: Para obtener más información, consulte Python GUI – tkinter
 

Creando tablas usando Tkinter

Una tabla es útil para mostrar datos en forma de filas y columnas. Desafortunadamente, Tkinter no proporciona un widget de tabla para crear una tabla. Pero podemos crear una tabla usando métodos alternativos. Por ejemplo, podemos hacer una tabla mostrando repetidamente widgets de entrada en forma de filas y columnas.
Para crear una tabla con cinco filas y cuatro columnas podemos usar dos bucles for como: 
 

for i in range(5):
    for j in range(4):

Dentro de estos bucles, tenemos que crear un widget de entrada mediante la creación de un objeto de clase de entrada, como: 
 

e = Entry(root, width=20, fg='blue', font=('Arial', 16, 'bold')

Ahora, necesitamos lógica para colocar este widget de entrada en filas y columnas. Esto se puede hacer usando el método grid() al que podemos pasar posiciones de fila y columna, como: 
 

# here i and j indicate 
# row and column positions
e.grid(row=i, column=j)

Podemos insertar datos en el widget de Entrada usando el método insert(), como: 
 

e.insert(END, data)

Aquí, ‘FIN’ indica que los datos continúan agregándose al final de los datos anteriores en el widget de entrada.
Esta es la lógica que se usa en el programa que se muestra a continuación usando los datos que provienen de una lista. Hemos tomado una lista que contiene 5 tuplas y cada tupla contiene cuatro valores que indican la identificación del estudiante, el nombre, la ciudad y la edad.
Por lo tanto, tendremos una tabla con 5 filas y 4 columnas en cada fila. Este programa también se puede aplicar sobre datos provenientes de una base de datos para mostrar los datos completos en forma de tabla.
Código fuente: 
 

Python3

# Python program to create a table
  
from tkinter import *
 
 
class Table:
     
    def __init__(self,root):
         
        # code for creating table
        for i in range(total_rows):
            for j in range(total_columns):
                 
                self.e = Entry(root, width=20, fg='blue',
                               font=('Arial',16,'bold'))
                 
                self.e.grid(row=i, column=j)
                self.e.insert(END, lst[i][j])
 
# take the data
lst = [(1,'Raj','Mumbai',19),
       (2,'Aaryan','Pune',18),
       (3,'Vaishnavi','Mumbai',20),
       (4,'Rachna','Mumbai',21),
       (5,'Shubham','Delhi',21)]
  
# find total number of rows and
# columns in list
total_rows = len(lst)
total_columns = len(lst[0])
  
# create root window
root = Tk()
t = Table(root)
root.mainloop()

Producción: 
 

Publicación traducida automáticamente

Artículo escrito por srishtirajani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *