Bonjour,

Je travaille sur un projet qui consiste à superposer une grille faites de lignes au dessus d'une image, le tout dans un canvas. Les lignes sont dessinées en fonction de la taille des cellules requises.
Je veux pouvoir masquer à souhait l'ensemble de la grille en cochant/décochant un checkbutton en dehors du canvas.

Pour cela j'ai attribué à chacune des lignes le tag "grid".

Voici ma fonction qui gère l'affichage de la grille :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
def hideGrid(self):
        if self.showGrid.get()==False:
            for i in self.viewer.canvas.find_withtag("grid"):
                self.viewer.canvas.itemconfig(i,fill="")
        else:
            for i in self.viewer.canvas.find_withtag("grid"):
                self.viewer.canvas.itemconfig(i,fill="black")
Problème : j'ai beau mettre la couleur de la ligne en transparente, elle ne bouge pas du tout. J'ai fais quelques essais en modifiant la largeur de la ligne et là il s'avère que je peux modifier seulement "l'intérieur de la ligne". En fait, dans tkinter, les lignes semblent avoir une bordure noire à laquelle on ne peut pas toucher...
J'ai également essayé d'agir sur la propriété state="hidden", mais cela ne fonctionne pas plus.

Quelqu'un a une idée ?