Exécution de la commande du bouton sur la création
Dans le code fourni, un widget de bouton est créé avec son option de commande définie sur le résultat d'une fonction avec un argument, résultant en une exécution immédiate de la commande. Pour résoudre ce problème, il est crucial de comprendre comment la gestion des événements fonctionne dans tkinter.
dans tkinter, la gestion des événements fonctionne en associant une fonction à un événement (par exemple, clic du bouton). Lorsque l'événement se produit, Tkinter invoque la fonction associée. Cependant, dans le code fourni, l'option de commande contient le résultat de l'invoquer le bouton de fonction ('hey') plutôt qu'une référence à la fonction elle-même.
Par conséquent, le code fait essentiellement la même chose que:
result = button('hey') b = Button(admin, text='as', command=result)
Par conséquent, la commande est exécutée immédiatement lorsque le bouton est créé, imprimant 'hey' et 'het', et lorsque le bouton est cliqué, rien ne se passe puisque l'option de commande a déjà été exécutée. Par exemple:
b = bouton (admin, text = 'as', command = bouton)
b = Button(admin, text='as', command=button)
b = bouton (admin, text = 'as', command = lambda: bouton ('hey'))
b = Button(admin, text='as', command=lambda: button('hey'))
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3