gtk.combo_box_new_text() und remove_text()

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
Antworten
Benutzeravatar
psd
User
Beiträge: 6
Registriert: Sonntag 4. September 2005, 17:43

Donnerstag 26. April 2007, 11:04

Hallo,

ich versuche gerade, die Items einer ComboBox dynamisch zu erzeugen.
Zuerst erstelle ich die ComboBox mit den initialen Items:

Code: Alles auswählen

List = ['foo', 'bar']
combo = gtk.combo_box_new_text()
for item in L:
    combo.append_text(item)
Dann lösche ich alle Einträge (um anschließend neue einzufügen):

Code: Alles auswählen

for item in range(len(List)):
    combo.remove_text(item)
Hier klemmt es auch schon, es bleibt nämlich immer ein alter Eintrag übrig.
Kann mir dazu jemand einen Tip geben?

Danke im voraus, Peter
BlackJack

Donnerstag 26. April 2007, 11:47

Da sollten noch mehr Einträge bleiben, weil effektiv nur jeder zweite gelöscht wird. Wenn Du einen Eintrag löscht, rücken alle folgenden "nach vorne". Lösung wäre zum Beispiel in der Schleife immer Element 0 zu löschen.
Benutzeravatar
psd
User
Beiträge: 6
Registriert: Sonntag 4. September 2005, 17:43

Donnerstag 26. April 2007, 12:15

Stimmt, ich hatte es nur mit zwei Einträgen getestet. Mit dem Löschen von Element 0 klappt es jetzt.

Danke und schönen Tag noch.
Antworten