Programmation python question debutant

Utilisateur anonyme -  
quent217 Messages postés 424 Statut Membre -
Bonjour (je suis un vrai debutant), je voudrai savoir comment dire en python : Si le bouton a été cliqué une fois, alors ne plus lancer la fonction

je sais que c’est quelque chose comme ca :

if (nombre de clique)==1:

(Alors Ne plus lancer la fonction)

et aussi, Si la fonction a deja ete lancé une fois, alors ne plus la relancer et passer

Merci d’avance

2 réponses

  1. quent217 Messages postés 424 Statut Membre 348
     
    Bonjour,
    Tu peux utiliser une variable globale qui est initialisé à False et tu la passes à True quand tu clique sur le bouton. Tu aurais quelque chose comme ça dans la fonction du bouton :
    def functionButton():
        global clicButton
        if not clicButton:
            clicButton = True
            # Code
    
    clicButton = False


    Ou en comptant tous les cliques si tu en as besoins :
    def functionButton():
        global nbClics
        if nbClics == 0:
            # Code
        nbClics += 1
    
    nbClics = 0
    0
  2. Utilisateur anonyme
     
    mon bouton est déjà configurer :
    button=Button(fenetre, text="lancer fonction",command=lancer_fonction)

    il exécute la fonction lancer_fonction lorsqu'il est appuyé, cependant dans la fonction lancer_fonction, je dois faire appel à une autre fonction au tout début lancer_fonction2 mais seulement lors du premier clic
    0
    1. quent217 Messages postés 424 Statut Membre 348
       
      Vous pouvez faire comme je vous ai montré en mettant la condition dans lancer_fonction pour savoir si vous appelez lancer_fonction2 ou pas.
      def lancer_fonction():
          global clicButton
      
          # Début du code
          
          if not clicButton:
              clicButton = True
              lancer_fonction2()
      
          # Suite du code
      
      clicButton = False
      0