Bonsoir je reviens sur ce forum parce que je suis de nouveau bloqué dans mon tipe.
Je tente ici d'afficher une image sur mes boutons, mais l'image ne s'affiche pas et je reçois une erreur me disant que l'image n'existe pas.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 
class Fen_jeu(tk.Tk):
 
    def __init__(self, taille):
        super().__init__()
 
        # infos sur la partie
        self.couleur_tour = -1
        self.groupes = []
        self.goban = np.zeros((taille, taille))
        self.tab_boutons = [[0 for k in range(taille)] for k in range(taille)]
        self.boutons = []
        self.pions_captures_N = 0
        self.pions_captures_B = 0
 
        # images
        self.pion_blanc = tk.PhotoImage(file="images\pion blanc.png")
        self.pion_noir = tk.PhotoImage(file="images\pion noir.png")
        self.goban19 = tk.PhotoImage(file="images\goban19.png")
        self.goban9 = tk.PhotoImage(file="images\goban9.png")
 
        # infos de la fenêtre
        self.title("Jeu de Go")
        self.creer_barre_menu()
 
        # creation widgets
        self.zone_grille = ttk.Frame(self)
        self.zone_point = ttk.Frame(self)
        self.zone_point.pack()
        self.zone_grille.pack()
        self.creer_zone_grille(taille)
        self.creer_zone_point()
 
    def creer_zone_grille(self, n):
        for i in range(n):
            for j in range(n):
                b = ttk.Button(self.zone_grille, text=str(i) + "," + str(j), command=lambda k=i, l=j: self.tour_de_jeu((k, l)))
                self.tab_boutons[i][j]= b
                b.grid(row=i, column=j)
 
       def rafraichir(self):
        nouveau = np.zeros_like(self.goban)
        # met la valeur de la couleur du groupe pour les positions du groupe
        for g in self.groupes:
            for pos in g.positions:
                nouveau[pos[0], pos[1]] = g.couleur
        self.goban = nouveau
        # met les pions sur le plateau
        self.pion_blanc = tk.PhotoImage(file="images\pion blanc.png")
        self.pion_noir = tk.PhotoImage(file="images\pion noir.png")
        (n,k)= np.shape(self.goban)
        for i in range(n):
            for j in range (n):
                if self.goban[i,j] == -1:
                    self.tab_boutons[i][j]['image'] = self.pion_noir
                elif self.goban[i,j] == 1:
                    self.tab_boutons[i][j]['image'] = self.pion_blanc
La fonction tour de jeu appelée par les boutons appelle la fonction rafraichir que j'ai jointe.
J'ai fait attention à bien référencer mes images donc je ne comprends pas où j'ai pu me tromper.
je vais continuer mes recherches mais un peu d'aide serait la bienvenue.
Merci d'avance