2009-11-21 7 views
1

J'ai un client de discussion qui interroge en permanence un serveur et récupère de nouveaux messages.Redessiner en continu l'élément wxPython

De mon def __init __() je:

wx.CallAfter(self.pollServer) 

qui est défini:

def pollServer(self): 
    t = self.updateMessages() 
    time.sleep(5) 
    self.pollServer() 

impression Maintenant, les messages dans le terminal montre que cela fonctionne, mais l'interface graphique est « gelé "Au lieu d'être continuellement rafraîchi et je pensais que CallAfter s'en occupe. Pourriez-vous aider?

+1

viens de découvrir wxPyTimer() est que l'alternative? – Radek

Répondre

2

au lieu de

time.sleep(5) 
self.pollServer() 

essayer avec

wx.CallLater(5,self.pollServer) 
+0

AttributeError: l'objet 'module' n'a pas d'attribut 'CallLater' – Radek

+1

Quelle est votre version de wxPython btw? son travail dans le mien – YOU

+0

et aussi quel OS? – YOU