Seite 1 von 1

wxListCtrl: Daten auslesen

Verfasst: Freitag 28. Dezember 2007, 14:22
von Blauer Fasan
Guten Tag wünsch ich euch!

Ich arbeite gerade mit einem wxListCtrl in dem Einträge wie folgt aufzufinden sind:

| Datum | Typ | Titel | Prioritaet | Beschreibung |
-----------------------------------------------------------------------------------------
| 2008/1/15 | Klausur | Informatik | Stufe 1-Sehr hoch | Thema: C++ |
... ... ... ... ...

Nun möchte ich gerne, wenn der Benutzer einen dieser Einträge (also eine Zeile davon) anwählt die Daten auslesen. Ich möchte die Date aus jeder Spalte bekommen. Eingefügt habe ich die Daten mit InsertStringItem(index, label). Danach habe ich dann die einzelnen Daten für die Spalten hinzugefügt: SetStringItem(index, col, label).

Jetzt bin ich aber komischeweise überfragt, wie ich die Daten dort wieder auslesen kann. Wahrscheinlich eine doofe Frage aber wenn ich auf dem Schlauch stehe, schubst mich runter ;)

Gruß BF

Verfasst: Freitag 28. Dezember 2007, 18:57
von fred.reichbier
Hallo,

lies dir mal das hier durch, insbesondere die wxPython note. .GetItem(id, col) dürfte es sein, und bei dem resultierenden wx.ListItem dann einfach .GetText anwenden ;)

Gruß Fred

Verfasst: Samstag 29. Dezember 2007, 12:10
von Blauer Fasan
Erstmal vielen Dank für deine Antwort.

Ich glaube, dass ich dies schon ausprobiert habe. Beim GetText() wird aber lediglich das zurückgegeben, was zuvor mit InsertStringItem() hinzugefügt wurde, also in diesem Fall das Datum. Was jedoch danach in den anderen Spalten mit SetStringItem() hinzugefügt wurde wird nicht zurückgeliefert, aber genau an diese Daten möchte ich gerne ran.

Diese Dokumentation habe ich schon relativ genau angeguckt, weiß jedoch trotzdem nicht, wie an die Daten zu kommen ist.
Wenn dir oder jemand anderem etwas einfällt, oder ihr etwas seht, was ich übersehe, bitte unbedingt sagen.

Gruß BF

Verfasst: Samstag 29. Dezember 2007, 13:07
von gerold
Hallo Blauer Fasan!

fred.reichbier meinte das so:

Code: Alles auswählen

print my_list_ctrl.GetItem(<zeile>, <spalte>).GetItemText()
Ich weiß nicht ob es so funktioniert aber so steht es zumindest in der Doku.

mfg
Gerold
:-)

Verfasst: Samstag 29. Dezember 2007, 18:43
von Blauer Fasan
Also vielen Dank! Mit dem, wie du es beschrieben hast funktioniert es, nur dass es nicht GetItemText() heißt, sondern GetText().

Also nochmals vielen Dank euch beiden!