Cette fonction crée des ronds, chaque rond a un tag unique (cpt), et deux tags communs.
def create_noeuds1():
""" Crée un quadrillage de noeuds en fonction de sa dimension ligne/colonne """
h = main.hauteur_entry.get()
l = main.largeur_entry.get()
i, j = 0, 0
x0,y0,x1,y1 = 30, 30 , 50 ,50
# création du quadrillage de dimension ligne, colonne
cpt = 0
while i < int(l)-1 :
while j < int(h)-1 :
main.my_canvas.create_oval(x0,y0,x1,y1, fill = 'black', tag=("mur",cpt))
x0 ,x1 = x0 + 60 , x1 + 60
j = j + 1
cpt = cpt + 1
j = 0
i = i + 1
y0, y1 = y0 + 60, y1 + 60
x0, x1 = 30, 50
Ce qui me permet de récuperer le tag de chaque objet graphique en cliquant dessus c'est :
def callback(event):
items = main.my_canvas.find_withtag("current")
tag = main.my_canvas.gettags(items)
main.txtvar = tag
coord = main.my_canvas.coords(tag)
print(main.txtvar)
appelée grâce à :
my_canvas.bind('<Button-1>',ui.callback)
en cliquant sur mes objets graphiques, j'obtiens un affichage comme suit :
('mur', '0', 'current')
('mur', '1', 'current')
('mur', '2', 'current')
Donc j'obtiens bien un tag unique pour chaque objet graphique, maintenant j'aimerai une fonction (si elle existe) qui me permette de récuper les coordonnées de chaque objet graphique en fonction des tags, un truc du genre : mycanvas.recupcoordwithtag(tag)
voilou, j'espere avoir été clair, et merci de me prêter un peu de votre temps pour résoudre mon pb.
kiss =D