Comment stopper l'horloge démarrée par : Clock.schedule_interval
Gerard.isa
Messages postés
108
Statut
Membre
-
Gerard.isa Messages postés 108 Statut Membre -
Gerard.isa Messages postés 108 Statut Membre -
Bonjour,
Pour la suite de mon petit jeu pour enfant, je n'arrive pas à trouver comment stopper l'horloge démarrée par :
Clock.schedule_interval(self.deplacement, 10.0/100.0)
Merci de m'éclairer
Pour la suite de mon petit jeu pour enfant, je n'arrive pas à trouver comment stopper l'horloge démarrée par :
Clock.schedule_interval(self.deplacement, 10.0/100.0)
Merci de m'éclairer
Configuration: Windows / Firefox 63.0
4 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
suggestion:monevenement = Clock.schedule_interval(my_callback, 0.5) # pour arrêter: monevenement.cancel() # possible aussi d’arrêter ainsi, non recommandé pour des raisons de performance: Clock.unschedule(my_callback)
-
Salut yg_be,
Merci de ton aide.
Je débute en Python.
Voici mon bout de code, ce serait sympa de me montrer comment utiliser ta solution.class Voiture(Widget): def __init__(self,canvas): self.dx = 10 self.canvas=canvas #Taille et position: self.size=(Window.size[0]*0.4,Window.size[1]*0.4) #self.pos=(0,Window.size[1]*0.02) self.pos=(0,0) #Ajout de l'image CheminImageVoiture = "Z:\\Projet Jeu\\Images\\Voiture01.png" with self.canvas: self.dessin = Rectangle(source=CheminImageVoiture,size=self.size, pos=self.pos) self.bind(pos=self.update_canvas) def update_canvas(self, *args):#Mise a jour des positions de l'image: self.dessin.pos = self.pos def move(self, fin) self.x=self.x+self.dx print(self.x) if self.x > 600: # limite de l'ecran fin=True return(fin) def positionner(self, obj_form): #positionne la forme exactement à son emplacement if triangle_actif == False and demi_actif == False and hexa_actif == False: self.deplace_voiture() # si toutes les formes sont bien positionnées on fait sortir la voiture de l'écran def deplace_voiture(self): Clock.schedule_interval(self.deplacement_voiture, 10.0/100.0) def deplacement_voiture(self, dt):#Deplacement de la voiture et des formes fin = False self.voiture.move(fin) if fin: quelque chose pour arrêter l'horloge (et donc le déplacement) -
Le return (not fin) va renvoyer un False qui mettra fin à l'horloge ?
C'est ça qu'il faut comprendre ?
Si je n'ai rien compris, pourrais-tu détailler stp ? -