Seite 1 von 1

Aktualisierung nach Elementwahl aus Combobox

Verfasst: Dienstag 3. Juli 2007, 15:24
von htw7448
Wie kann man Python dazu bewegen mir den aktuell gewählten Eintrag aus eine ComboBox zurückzugeben.

Eine Methode alá:

Code: Alles auswählen

	def changed_cb(self, combobox):
		model = combobox.get_model()
		index = combobox.get_active()
		sel_nr = model[index][0]
		return sel_nr
		print 'Print 0', sel_nr
in Verbindung mit

Code: Alles auswählen

gew_los = self.combo2.connect('changed', self.changed_cb)
arbeitet leider nicht richtig. die Variable gew_los wird bei Neuwahl eines Elementes aus der Combobox nicht aktualisiert :?: .

Verfasst: Dienstag 3. Juli 2007, 17:22
von Trundle
gew_los wird nicht bei jedem Callback-Aufruf neu gesetzt, sondern wird auf den Rückgabewert von connect() gesetzt und der ist die ID des Handlers.

Verfasst: Mittwoch 4. Juli 2007, 00:59
von htw7448
wie kann ich erreichen das ich immer den aktuellen Wert als Rückgabe bekomme? Die ID des Handlers ist da doch wenig hilfreich oder?

Verfasst: Mittwoch 4. Juli 2007, 07:36
von veers
htw7448 hat geschrieben:wie kann ich erreichen das ich immer den aktuellen Wert als Rückgabe bekomme? Die ID des Handlers ist da doch wenig hilfreich oder?
In dem du gew_los im Callback setzt.

Code: Alles auswählen

def changed_cb(self, combobox):
    ...
    combobox.sel_nr = sel_nr
;)
PS: Das Print nach dem return ist reichlich sinnfrei :)