[Python-de] Probleme mit gtk.Combo

Fritz Cizmarov fritz at sol.at
Don Jul 8 01:46:27 CEST 2004


Am Wed, 07 Jul 2004 21:25:48 +0200
Schrieb Marcus Habermehl <bmh1980de at yahoo.de>:

> Hallo.
> 
> Bisher habe ich meine GTK GUIs für Python mit Glade erstellt. Aus
> diversen Gründen musste ich jetzt feststellen, dass Glade GUIs
> teilweise etwas unflexibel sind.
> 
> Daher habe ich mich jetzt entschlossen, die GUIs komplett über Python
> zu erstellen. Was, wenn man es mal verstanden hat mit HBox und VBox
> umzugehen, kein größerer Aufwand ist, als mit Glade.
> 
> Leider bin ich jetzt auf ein Problem mit gtk.Combo gestoßen, bei dem
> ich einfach nicht weiter komme. :-(
> 
> Hier mal der Ausschnitt, der die ComboBox betrifft:
> 
> combo1 = gtk.Combo()
> combo1.set_popdown_strings(combo1tmp1)
> combo1.entry.set_text(icon3)
> combo1.set_case_sensitive(False)
> combo1.set_allow_empty(False)
> combo1.set_value_in_list(True)
> 
> Es sind die letzten beiden Einträge, die mir Schwierigkeiten machen.
> 
> Laut help(gtk.Combo) in Python sollte der Aufruf richtig sein. Aber:
> 
> combo1.set_allow_empty(False) ergibt "AttributeError: 'gtk.Combo'
> object has no attribute 'set_allow_empty'"
> 
> combo1.set_value_in_list(True) ergibt "TypeError: GtkCombo.
> set_value_in_list() takes exactly 2 arguments (1 given)"
> 
> Wenn ich es mit combo1.set_value_in_list(True, True) probiere,
> funktioniert der Aufruf.
> 
> Aber ich finde leider keinen Hinweis, wozu zwei Argumente benötigt
> werden, oder was das zweite, bzw. erste Argument bedeutet.
> 
> Hab ich in der Hilfe etwas komplett missverstanden, oder habe ich da
> einen Denkfehler drinn?
> 
> Kann mir jemand weiterhelfen?
> 
> Gruß
> 
> Marcus
> 

Hi Marcus,

laut "pydoc gtk.Combo"

combo1.allow_empty(False) # ohne set_!

Das kann allerdings in Deinem Fall wegfallen, da laut Doku
"set_value_in_list()" der 2. Parameter genau dieses Flag setzt.

siehe:
http://www.moeraki.com/pygtkreference/pygtk2reference/class-gtkcombo.html#method-gtkcombo--set-value-in-list


Gruß

Fritz