Comment arrêter une fonction avec un bouton

ninouillelanouille Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour, je suis débutante en python et j'ai un projet de mini jeu à rendre. Ce mini jeu consiste à faire gonfler un ballon et à l'arrêter avant qu'il arrive à une punaise. Il faudrait pouvoir arrêter la fonction "gonfler le ballon" grâce à un bouton. Problème: je ne sais pas comment faire.
Voilà le programme actuel, je sais qu'il est encore très rudimentaire mais ce n'est pas du tout terminé.
Je travaille sur python 2.7

from Tkinter import*
from random import randrage
#Création de la fenêtre
fen1=Tk()
fen1.title="Le plus grand des ballons"
fen1.geometry("800x500")
#définition des fonctions
def ballon():
global x1, y1, x2, y2
can1.create_oval(x1,y1,x2,y2, width=2 fill=coul)
def glonfler():
global x1, x2, y1, y2
can1.create_oval(x1,y1,x2,y2,x1-1,y1-1, x2+1, y2+1, width=2, fill=coul)
global x1, x2, y1, y2
fen1.after(10,gonfler)
def stopgonfler():
global x1, x2, y1, y2
def punaise():
#définition des widgets
can1=Canvas(fen1)
bou1=Button(fen1, text="arrête le ballon !", command=stopgonfler)
bou2=Button(fen1, text="Souffle dans le ballon !", command=gonfler)
#placement des widgets
fen1.mainloop

Pourriez vous m'aider et me signaler les erreurs éventuelles ?
Merci d'avance



1 réponse

Utilisateur anonyme
 
Tu peux rajouter une condition dans gonfler qui regarde si une variable vaut vraie. Dans ton stopgonfler, tu changes la valeur de cette variable à false. Comme ça, il retourne dans gonfler mais ça vaut false.

Modifie ton post initial en ajoutant des bannières de code python autour de ton code pour une meilleur lisibilité. Il faut cliquer sur <> dans l'édition de ton message.
0