Bouton python

Résolu
Kilton937342 Messages postés 5 Statut Membre -  
Kilton937342 Messages postés 5 Statut Membre -
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. Kilton937342 Messages postés 5 Statut Membre
     
    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
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      quand on utilises les balises de code, il faut spécifier de quel langage il s'agit...
      0
    2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      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
    3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > yg_be Messages postés 23437 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
    4. Kilton937342 Messages postés 5 Statut Membre > yg_be Messages postés 23437 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
    5. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Kilton937342 Messages postés 5 Statut Membre
       
      as-tu essayé
      command=Interface_ciblée_exos_globaux.interface_comparaison
      ?
      0
  2. Kilton937342 Messages postés 5 Statut Membre
     
    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