Bonjour à tous,
Je me permets de vous contacter car je suis confronté à un problème que je comprends mais que je n'arrive pas à résoudre. J'ai créé un petit programme pour gérer mon jardin et j'y ai inclu une photothèque contenant des photos miniatures que je veux agrandir grâce à une fonction (event). Je n'ai pas encore rédigé la fonction d'agrandissement mais peu importe : je teste le fonctionnement du gestionnaire d'événements en changeant le fond bleu des canevas qui contiennent chaque photo en un fond rouge lorsque la souris les survole.
J'ai donc créé une boucle for in range(0, len(...)) et un tag_bind() afin que lorsque je survole la photo, mon curseur de souris se transforme en main et le contour de la photo devienne rouge.
Mon problème, c'est que ça fonctionne uniquement avec la dernière photo. C'est comme si, à chaque itération, ma boucle détruisait le tag_bind() et ne conservait que le dernier tag_bind() pour la dernière photo.
Voici mon code et en dessous une capture d'écran de mon programme. Quelque soit la photo que je survole avec ma souris, c'est toujours la dernière qui s'active (couleur rouge).
Comment puis je faire pour pouvoir activer ma fonction(event) sur chaque photo séparément? Je cherche encore et encore mais je bloque
Je ne sais pas si j'ai été très clair dans mes explications mais je remercie par avance ceux qui m'apporteront leur aide.
![]()
Partager