2 votes

Comment créer efficacement une grande grille d'entrées dans Tkinter ?

Je veux créer un solveur de Sudoku en tkinter comme exercice et j'essaie de comprendre comment créer réellement la grille pour que l'utilisateur puisse saisir le tableau de Sudoku. Je pensais utiliser des Entries pour cela mais je devrais en faire un total de 9x9 = 81.

e1 = Entry(master)
e2 = Entry(master)
e3 = Entry(master)
     . . . 
e81 = Entry(master)

e1.grid(row=0, column = 0)
e2.grid(row=0, column = 1)
ae33.grid(row=0, column = 2)
       . . . 
e81.grid(row=9, column = 9)

Il doit y avoir une autre façon de faire cela, non?

2voto

Reblochon Masque Points 1597

Vous pouvez utiliser une boucle for pour remplir les champs d'entrée et les stocker dans une structure de données :

entries = [[None for col in range(9)] for row in range(9)]

for row in range(9):
    for col in range(9):
        e = tk.Entry(master)
        e.grid(row=row, column=col)
        entries[row][col] = e

Vous pouvez ensuite accéder aux entrées avec un index de ligne et de colonne.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X