You are on page 1of 2

from tkinter import *

from tkinter import ttk


m, n = 30, 40

def pintar():
otrav=Toplevel(root2)

otrav.grid_rowconfigure(0, weight=1)
otrav.grid_columnconfigure(0, weight=1)

canvas = Canvas(otrav)
canvas.grid(row=0, column=0, sticky="nsew")

scrollbar_vertical = Scrollbar(otrav,background="green", command=canvas.yview)


scrollbar_vertical.grid(row=0, column=1, sticky="ns")

style = ttk.Style()
style.configure("Horizontal.TScrollbar", gripcount=0, background="green",
darkcolor="#c0c0c0", lightcolor="#c0c0c0", troughcolor="#c0c0c0")

scrollbar_horizontal = ttk.Scrollbar(otrav, orient=HORIZONTAL,


command=canvas.xview, style="Horizontal.TScrollbar")
scrollbar_horizontal.grid(row=1, column=0, sticky="ew")

canvas.configure(yscrollcommand=scrollbar_vertical.set,
xscrollcommand=scrollbar_horizontal.set)
canvas.bind('<Configure>', lambda e:
canvas.configure(scrollregion=canvas.bbox("all")))

frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")

entrada = dict()
for ent in range(m * n):

entry_widget = Entry(frame, width=6)


entry_widget.grid(row=ent // n, column=4+ent % n, padx=2, pady=2,
sticky="nsew")

entry_widget.config(fg='red', font=("Calibri", 12), justify="center")


entry_widget.insert(0, "0")

text_widget = Text(frame, width=10, height=1)


text_widget.grid(row=0, column=0,rowspan=2, padx=2, pady=2, sticky="nsew")
text_widget.config(fg='blue', font=("Calibri", 12), wrap=WORD)
button = Button(frame, text="Pintar", command=pintar)
button.grid(row=6,column=0, columnspan=1,rowspan=2, pady=10)

# Configura el redimensionamiento de las celdas en el canvas


for i in range(m):
frame.grid_rowconfigure(i, weight=1)
frame.grid_rowconfigure(m, weight=0) # Evita que el último botón se estire
frame.grid_columnconfigure(0, weight=1)
frame.grid_columnconfigure(1, weight=1)
pass # Agrega aquí la lógica de la función pintar()

root2 = Tk()
button = Button(root2, text="Pintar", command=pintar)
button.grid(row=6,column=0, columnspan=1,rowspan=2, pady=10)
root2.mainloop()

You might also like