Ich hab hier so ne schicke wx.ListCtrl in meinem Programm in der die Clients aufgezaehlt werden.
Wenn ich nun den (fast genauso schicken

Code: Alles auswählen
def updateConnectedHosts(self, evt):
#clients = list() # brauch ich spaeter... vielleicht
i=0
#p2p_info ist eine liste von entsprechenden 2er-tuples
for ip, name in p2p_info:
print ip, name
if self.p2p_connectedList.GetItem(i, 2).GetText() == "not connected":
self.p2p_connectedList.SetStringItem(i, 2, "trying to connect")
self.p2p_connectedList.Refresh()
client = Client("PYROLOC://"+ip+":7766/test")
try: client.run()
except: pass
if client.connected():
self.p2p_connectedList.SetStringItem(i, 2, "connected")
self.p2p_connectedList.Refresh()
else:
self.p2p_connectedList.SetStringItem(i, 2, "not connected")
self.p2p_connectedList.Refresh()
time.sleep(1)
i+=1
Ich hab schon extra mal ein sleep(1) eingebaut, aber das hilft genauso wenig wie das .Refresh(). ...woran liegt das?
Danke schonmal und Gruesse aus Sachsen-Anhalt...
EDIT: vielleicht sollte noch erwaehnt werden, dass die Client-Klasse von Thread aberbt und Pyro zur Netzwerkkommunikation benutzt (sieht man ja bei der Instanzierung)...