Programmation python question debutant

Fermé
Utilisateur anonyme - 29 févr. 2020 à 00:10
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 - 29 févr. 2020 à 21:07
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

quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 344
29 févr. 2020 à 01:52
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
Utilisateur anonyme
29 févr. 2020 à 15:45
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
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 344
29 févr. 2020 à 21:07
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