Hallo.
Ich habe ein Wx.ListCtrl.
Wie bekomme ich jetzt alle Einträge in irgendeiner Form von Sequenz? Ich hab leider keine GetValues()-Methode oder etwas ähnliches gefunden. Wäre froh wenn mir jemand helfen könnte.
Gruß sprudel
wx.ListCtrl - Einträge bekommen
-
- User
- Beiträge: 39
- Registriert: Montag 27. November 2006, 16:07
- Wohnort: Linz, Oberösterreich
Hallo sprudel,
Ich habe das bei mir so gelöst:
Hoffe das hilft,
Hannes
Ich habe das bei mir so gelöst:
Code: Alles auswählen
list = []
index = listctrl.GetNextItem(-1)
while index != -1:
list.append(listctrl.GetItemText(index))
index = listctrl.GetNextItem(index)
Hannes
I must not fear. Fear is the mind-killer. Fear is the little death that brings total obliteration.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path.
Hallo. Dieser Code ist im Prinzip schonmal sehr gut. Jetzt hab ich nur noch das Problem: Wie bekomm ich die anderen Spalten auch noch?
Ich hätte es am besten gerne so, dass für jede zeile eine Sequenz entsteht, und jeder dieser Einträge den Text eines Feldes enthält. Von Links nach rechts. Ist das denn auch möglich?
Ich hätte es am besten gerne so, dass für jede zeile eine Sequenz entsteht, und jeder dieser Einträge den Text eines Feldes enthält. Von Links nach rechts. Ist das denn auch möglich?
-
- User
- Beiträge: 39
- Registriert: Montag 27. November 2006, 16:07
- Wohnort: Linz, Oberösterreich
Naja, du kannst über den index das Ding zeilenweise durchgehen, und dann eine Datenstruktur aufbauen, die deinen Anforderungen genügt.
Mehr als diesen Iterator kann ich Dir leider nicht bieten...
Mehr als diesen Iterator kann ich Dir leider nicht bieten...
I must not fear. Fear is the mind-killer. Fear is the little death that brings total obliteration.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path.
Das ListCtrl ist so eine Sache für sich, nicht gerade, wie soll ich sagen, intuitiv.sprudel hat geschrieben:Wie kann ich überhaupt in weitere Felder schreiben?
Um weitere hinzuzufügen (hier in der ersten reihe):
Code: Alles auswählen
l.InsertStringItem(0, "datacol0") # index 0 = 1. reihe
l.SetStringItem(0,1, "datacol1")#index 0, spalte 1
und wie soll ich sie dann wieder auslesen?
sagen wir, eine sequenz pro zeile
Und wie sortiere ich dieses verfluche ListCtrl eigentlich? Will die erste Spalte Aufsteigend sortiert haben.
. Und ich dachte immer in den WxWidgets wäre alles so intuitiv 
sagen wir, eine sequenz pro zeile

Und wie sortiere ich dieses verfluche ListCtrl eigentlich? Will die erste Spalte Aufsteigend sortiert haben.


Hast du dir das ListCtrl Demo angesehen?sprudel hat geschrieben:und wie soll ich sie dann wieder auslesen?
sagen wir, eine sequenz pro zeile
Und wie sortiere ich dieses verfluche ListCtrl eigentlich? Will die erste Spalte Aufsteigend sortiert haben.. Und ich dachte immer in den WxWidgets wäre alles so intuitiv
Da ist glaube ich alles drin, was du suchst.
in einem drPython Plugin habe ich dafür eine Funktion:sprudel hat geschrieben:Hi,
Irgendwie kapier ich das nicht so recht. Ich schaff es immer nur die linke Spalte zu bekommen.
Code: Alles auswählen
def getColumnText(self, index, col):
item = self.GetItem(index, col)
return item.GetText()