Python - pause dans une boucle
guiguizekid
Messages postés
70
Date d'inscription
Statut
Membre
Dernière intervention
-
loulou1209 -
loulou1209 -
Bonjour,
je crée un programme qui reproduit un mouvement en boucle dans un canvas Tkinter. L'utilisateur lance le prgramme, et peut observer l'évolution du mouvement (fourmi de langton pour ceux qui connaissent).
cependant, pour que ce mouvement soit visualisable, il faut que, entre les différentes étapes, l programme attendent et laissent le temps à l'utilisateur la nouvelle configuration.
j'ai essayer avec la fonction sleep du module time, mais, si le programme attend effectivement quelques secondes entre 2 étapes, il ne permet pas l'affichage de la nouvelle configuration!
en gros, le code de la methode ressemble à ça :
la succession d'étape est donc : etape, sleep, i+=1, etape, sleep, i+=1 ...
je crois que les caluls de etape suivi de i+=1 est telllement rapide que le canvas n'a pas le temps d'être mis à jour, et pendant le sleep, il ne se passe rien bien sûr!
donc le but recherché n'est pas atteint...
pourriez vou sm'aider?
merci d'avance
je crée un programme qui reproduit un mouvement en boucle dans un canvas Tkinter. L'utilisateur lance le prgramme, et peut observer l'évolution du mouvement (fourmi de langton pour ceux qui connaissent).
cependant, pour que ce mouvement soit visualisable, il faut que, entre les différentes étapes, l programme attendent et laissent le temps à l'utilisateur la nouvelle configuration.
j'ai essayer avec la fonction sleep du module time, mais, si le programme attend effectivement quelques secondes entre 2 étapes, il ne permet pas l'affichage de la nouvelle configuration!
en gros, le code de la methode ressemble à ça :
def lancer(self): # pour le teste, j'ai limité la boucle : i=0 while i<10 : self.etape() sleep(2) i+=1
la succession d'étape est donc : etape, sleep, i+=1, etape, sleep, i+=1 ...
je crois que les caluls de etape suivi de i+=1 est telllement rapide que le canvas n'a pas le temps d'être mis à jour, et pendant le sleep, il ne se passe rien bien sûr!
donc le but recherché n'est pas atteint...
pourriez vou sm'aider?
merci d'avance
A voir également:
- Python - pause dans une boucle
- Citizen code python avis - Accueil - Outils
- Imprimante en pause hp ✓ - Forum Imprimante
- Mon pc s'allume et s'éteint en boucle - Forum Matériel & Système
- Mon ordinateur s'allume et s'eteint en boucle ✓ - Forum Matériel & Système
- Imprimante en pause ✓ - Forum Imprimante
5 réponses
le problème c'est que les canvas ne s'actualisent qu'au retour a la boucle mainloop c'est a dire que ton dessin ne s'affiche qu'une fois le sous programme terminé
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question