Comprendre les Bindtags dans Tkinter
Lorsque vous travaillez avec Tkinter, les bindtags jouent un rôle crucial dans la gestion des événements. Comme vous l'avez mentionné dans votre question, l'ordre des bindtags peut avoir un impact sur la visibilité des valeurs d'événement. Explorons pourquoi ce comportement se produit.
Dans Tkinter, lorsqu'un événement est déclenché, le système vérifie les liaisons attachées aux diverses balises de liaison associées au widget qui a reçu l'événement. Par défaut, ces balises de liaison incluent le widget lui-même, sa classe et certaines balises globales.
Premier cas : balises de liaison par défaut
Lors de l'utilisation de balises de liaison par défaut pour vos widgets d'entrée , l'ordre est : ('.entry1', 'Entry', '.', 'all'). Cela signifie :
Problème : Dans ce cas, la valeur de l'événement n'est pas visible dans la définition de la fonction car elle est récupérée à l'aide de event.widget.get(). Au moment où la fonction est appelée, la liaison de classe a déjà été exécutée et la valeur de l'événement (dans notre cas, le caractère "x") a été insérée dans le widget.
Deuxième cas : modifié Bindtags
Dans le deuxième cas, l'ordre des bindtags pour le troisième widget d'entrée est modifié comme suit : ('.entry1','Entry','post-class-bindings', '.', 'all').
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!