Bonjour à tous,

depuis peu j'ai commencé à regarder tkinter, afin d'avoir une petite interface sympa pour un programme.
Mon objectif est pour l'instant simple:
- Créer une grille (pas de problème)
- Et y afficher des valeurs que j'ai dans une liste de la même taille que le tableau. (problème !)

Sauf que mon problème est que je n'arrive pas à afficher du texte comme je le veux.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
from tkinter import *
 
c = 30                          # Longueur d'un côté d'une case
n = 13                           # Nombre de cases par ligne et par colonne
cases = []                      # Liste contenant les objets cases
 
fen = Tk()
fen.title('Range')
 
bouton_quitter = Button(fen, text='Quitter', command=fen.destroy)
bouton_quitter.grid(row = 1, column = 1, sticky=W+E, padx=3, pady=3)
 
dessin = Canvas(fen, width = n*c+2, height = n*c+2, bg = 'white')             
 
dessin.grid(row = 0, column = 0, columnspan=2, padx=3, pady=3)
 
for ligne in range(n):          # Les cases de chaque ligne seront stockées dans "transit"
    transit=[]
    for colonne in range(n):    # Conception des cases d'une ligne
        transit.append(dessin.create_rectangle(colonne*c+2, ligne*c+2, (colonne+1)*c+2, (ligne+1)*c+2))
    cases.append(transit)       # Ajout de la ligne à la liste principale
 
for ligne in range(n):
    for colonne in range(n):
        if (ligne+colonne)%2 == 0:
            dessin.itemconfigure(cases[ligne][colonne], fill="green")
        else:
            dessin.itemconfigure(cases[ligne][colonne], outline='white')
 
fen.mainloop()
Dans un premier temps j'ai créé une grille et modifié la couleur afin de faire un damier.
Pour ça j'utilise canvas.itemconfigure à qui je lui donne l'id de la case et la colorie.
Est-il donc possible de la même manière d'associer un texte à une case ? J'ai tenté pas mal de choses sans grand succès ^^

Je suis surement passé à coté de quelque chose ou alors mon approche n'est pas la bonne.

Merci d'avance pour votre aide