tkinter et thread

tkinter et thread - Python - Programmation

Marsh Posté le 13-05-2006 à 17:02:37    

Bonjour,
 
Voilà j'ai un petit souci, j'essaye de faire une horloge (avec des aiguilles) et d'ailleurs j'ai reusi, petit prob, elle ralentit tout mon ordi.... : voici ma methode :  
 
 

Code :
  1. class Horloge(Thread):
  2.     __init__(self):
  3.        Thread.__initi__(self)
  4.        ....
  5.     def run (self):
  6.         while self.encours :
  7.             if 1seconde:
  8.                 self.deplaceraiguilles()
  9.     def stop(self):
  10.         self.encours = False
  11. h = Hologe()
  12. h.start()


 
 
Voilà, de plus, quand je fais stop et que je veux refaire start... il me dis que le thread est deja lancé.... alors que mettre self.encours à False devrai arreter la boucle et donc arreter le thread.. non?
 
merci de votre aide

Reply

Marsh Posté le 13-05-2006 à 17:02:37   

Reply

Marsh Posté le 13-05-2006 à 19:44:03    

Tu t'es pas dit que créer une boucle infinie à haute vitesse sans pauses ça risquait ptet d'être une mauvaise idée [:petrus dei]
 
Genre quoi [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 13-05-2006 à 19:52:50    

merci de ta reponse ;)
 
mais justement c'est pour ca que je vous demande :p .... comment eviter la boucle?
 
De plus je n'arrive pas relancer le thread... :(

Reply

Marsh Posté le 13-05-2006 à 20:01:11    

Tu peux pas éviter la boucle, mais tu peux utiliser threading.Event.wait
 
Ou alors tenter de passer par des timers


Message édité par masklinn le 13-05-2006 à 20:01:25

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 15-05-2006 à 19:25:04    

j'ai essayé avec un sleep(1) cela marche, cependant quand je deplace la fenetre, l'horloge s'arrete et elle ne reprend que lorsque j'ai laché le bouton de la souris...... je ne vois pas comment contourner le probleme??
 
merci de votre aide

Reply

Marsh Posté le 15-05-2006 à 19:28:06    

Je t'ai dit de passer pasr threading.Event.wait, qu'est-ce que tu me fous des sleep [:mlc]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 15-05-2006 à 19:33:38    

:( dsl mais c'est sleep qui est venu en premier... lol mais j'ai donc mis un Event().wait(1)... cependant j'ai toujours le meme probleme lorsque l'on deplace la fenetre...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed