URL: https://linuxfr.org/forums/programmation-python/posts/probleme-de-callback-avec-tkinter Title: Problème de callback avec Tkinter Authors: JPEC Date: 2015年02月20日T14:16:30+01:00 License: CC By-SA Tags: Score: 3 Bonjour, J'essaie de générer une barre d'outils à la volée. Pour celà je boucle sur une liste contenant les libellés des boutons et je créé mes boutons. ```python # code simplifié pour l'exemple : list = ["but1", "but2", "but3", "but4", "but5", "but6"] for key in list: ui.key = Button(ui, text=key, command=lambda:print(key)) ui.key.pack(side=LEFT, padx=2, pady=2) ``` Dans mon programme j'ai bien la barre d'outils suivante : ``` +——————————————————————————————————————————+ | [but1] [but2] [but3] [but4] [but5] [but6]| +——————————————————————————————————————————+ ``` Par contre lorsque je clique sur un bouton j'ai toujours la même action qui correspond à la dernière occurence de la liste (donc l'action de but6) : ``` click sur but1 affiche but6 click sur but2 affiche but6 click sur but3 affiche but6 click sur but4 affiche but6 click sur but5 affiche but6 click sur but6 affiche but6 ``` Je suppose que c'est la fonction lambda: qui pose problème... Et j'aimerais savoir comment procéder pour définir mon callback correctement. Merci.