Bouton python

Résolu
Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Quand je crée un bouton dans une class l'argument "command" se déclenche a la création du bouton et pas a l'appui du bouton
Quelqu'un sait pourquoi?
Merci d'avance

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, ce sera plus simple de t'expliquer si tu montres ton code.
tiens compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Voici mon code (un extrait)
C'est un générateur d'exercices de math que je code pour ma mère et là c'est le début de la partie interface

class Interface_globale(Générateur_exercices_global):
    """Interface globale pour chaque catégorie"""
    
    def __init__(self):
        Générateur_exercices_global.__init__(self)
    
    
    def interface_initiale(self):
        for y in root.winfo_children():
            y.destroy()
        root.pack_propagate(0)
        self.titre=tk.Label(root,text="Exercices à part",bg="blue",font=("arial",30,"bold italic")).pack(padx=60,pady=40)
        self.bouton_comparaison=tk.Button(root,text="Comparaison",width=40,height=2,command=Interface_ciblée_exos_globaux.interface_comparaison(self)).pack()
    
    
class Interface_ciblée_exos_globaux(Interface_globale):
    """ Interface pour les exos à part """
    
    
     
    def __init__(self):
        Interface_globale.__init__(self)
        
    def interface_comparaison(self):
        print("test")
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
quand on utilises les balises de code, il faut spécifier de quel langage il s'agit...
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
un extrait partiel ne permet pas toujours de se faire une idée.
il est préférable de simplifier le code afin de pourvoir partager l'ensemble d'un code qui montre le soucis.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
je suppose que le soucis est ici:
command=Interface_ciblée_exos_globaux.interface_comparaison(self)
, qui provoque l'appel de
Interface_ciblée_exos_globaux.interface_comparaison
.
0
Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
J'ai mis que cet extrait car le reste du code n'a aucun rapport avec ca.
Et le fait que la
command=Interface_ciblée_exos_globaux.interface_comparaison(self)
appel
Interface_ciblée_exos_globaux.interface_comparaison
est justement mon problème.
command=Interface_ciblée_exos_globaux.interface_comparaison(self)
est un argument, option du bouton qui est sensé se déclencher à l'appui du bouton, sauf qu'il se déclenche directement
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
as-tu essayé
command=Interface_ciblée_exos_globaux.interface_comparaison
?
0
Kilton937342 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
la fin du code est pour test
et quand je lance et que j'appelle la première class le code appelle la methode test au moment ou il défini le boutons_comparaison
0