Code: Alles auswählen
Traceback (most recent call last):
File "test.py", line 23, in OnGetItemText
return self.data[item]
IndexError: list index out of range
Oder denke ich allgemein zu kompliziert?
Code: Alles auswählen
Traceback (most recent call last):
File "test.py", line 23, in OnGetItemText
return self.data[item]
IndexError: list index out of range
Das macht alles ueberhaupt keinen Unterschied...midan23 hat geschrieben:
- Versuch doch mal, das self.list.update() aus Zeile 73 direkt nach dem Löschen zu plazieren
- In der Methode update deiner MyList-Klasse würde ich noch ein "self.Refresh()" einbauen ...
Das ist auch nur ein Beispiel, was mein Problem mit dem ListCtrl verdeutlicht. Die echten Daten stecken tatsaechlich in einer eigenen Klasse (welche auf eine Datenbank zugreift).midan23 hat geschrieben:Besser wäre es allerdings, die Datenverwaltung in einer eigenen Klasse unterzubringen.
Code: Alles auswählen
def OnGetItemText(self, item, col):
print len(self.data), item
return self.data[item]
Code: Alles auswählen
self.list.Select(i, on=False)
Code: Alles auswählen
def on_delete(self, evt):
for i in self.list.get_selection():
print "Delete", i
self.list.data.remove(i)
self.list.update()
self.list.Select(i, on=False)
self.list.update()