Fonction command d'un bouton tkinter défini dans une fonctio

Résolu/Fermé
Maxime320Y - 1 janv. 2022 à 14:00
 Maxime320Y - 1 janv. 2022 à 16:16
Bonjour,

Je suis en train programmer le jeu du démineur avec la bibliothèque Tkinter de Python. Cependant je rencontre un problème que le programme suivant résume bien :

from tkinter import *

root=Tk()

def command_btn():
    btn.destroy()

def spawn_btn():
    btn=Button(root,text='Hello World',command=command_btn)
    btn.pack()

spawn_btn()
root.mainloop()


La fonction command_btn ne reconnait pas btn. Je me suis demandé si je devais passer par une classe mais j'attends d'abord d'avoir vos avis...
A voir également:

1 réponse

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
1 janv. 2022 à 14:48
bonjour,
une possibilité:
def command_btn():
    root.MonBouton.destroy()

def spawn_btn():
    root.MonBouton=Button(root,text='Hello World',command=command_btn)
    root.MonBouton.pack()

une autre:
def command_btn():
    MonBouton.destroy()

def spawn_btn():
    btn=Button(root,text='Hello World',command=command_btn)
    btn.pack()
    return btn

MonBouton=spawn_btn()
0
Merci beaucoup, c'est parfait !
0