Bouton python

Résolu
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

  1. 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
    1. 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")
      1. Contributeur
        quand on utilises les balises de code, il faut spécifier de quel langage il s'agit...
      2. Contributeur
        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.
      3. Contributeur
        @yg_beje 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
        .
      4. @yg_beJ'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
      5. Contributeur
        @Kilton937342as-tu essayé
        command=Interface_ciblée_exos_globaux.interface_comparaison
        ?