Tkinter Avanzado: Crea Barras de Desplazamiento Horizontales y Verticales – Tutorial en Python
En este tutorial aprenderás a crear barras de desplazamiento horizontales y verticales en Tkinter, una biblioteca de GUI (Interfaz Gráfica de Usuario) para Python. Las barras de desplazamiento son útiles cuando el contenido de tu aplicación es demasiado grande para ser mostrado en la pantalla en su totalidad.
Crear una Barra de Desplazamiento Vertical
Para crear una barra de desplazamiento vertical en Tkinter, puedes usar el widget Scrollbar
junto con un widget de tipo contenedor como Canvas
o Text
. Aquà tienes un ejemplo de cómo hacerlo:
from tkinter import *
root = Tk()
# Crear el widget Canvas
canvas = Canvas(root)
canvas.pack(side=LEFT, fill=Y, expand=True)
# Crear la barra de desplazamiento vertical
scrollbar = Scrollbar(root, command=canvas.yview)
scrollbar.pack(side=RIGHT, fill=Y)
# Configurar la barra de desplazamiento
canvas.configure(yscrollcommand=scrollbar.set)
# Agregar contenido al Canvas
for i in range(100):
canvas.create_text(10, i*20, text=f'Item {i}')
root.mainloop()
Crear una Barra de Desplazamiento Horizontal
Para crear una barra de desplazamiento horizontal en Tkinter, el proceso es similar al de la barra vertical. Solo debes utilizar el parámetro xview
en lugar de yview
. Aquà tienes un ejemplo:
from tkinter import *
root = Tk()
# Crear el widget Canvas
canvas = Canvas(root)
canvas.pack(side=TOP, fill=X, expand=True)
# Crear la barra de desplazamiento horizontal
scrollbar = Scrollbar(root, orient=HORIZONTAL, command=canvas.xview)
scrollbar.pack(side=BOTTOM, fill=X)
# Configurar la barra de desplazamiento
canvas.configure(xscrollcommand=scrollbar.set)
# Agregar contenido al Canvas
for i in range(100):
canvas.create_text(i*20, 10, text=f'Item {i}')
root.mainloop()
¡Listo! Ahora tienes las herramientas necesarias para crear barras de desplazamiento horizontales y verticales en Tkinter. ¡Experimenta con diferentes configuraciones y personalizaciones para adaptarlas a tus necesidades!
Curso de Python Gratuito 👉 https://youtu.be/fJ4KoCeKyeQ