Seite 1 von 1

Signale / Overload nach neuer API

Verfasst: Freitag 6. August 2010, 15:38
von ftx
Hey Forum,
ich bin gerade dabei eine kleine Anwendung zu schreiben und stehe vor folgendem Problem:

Ich benutze pyQt und wollte mir gleich einmal die neue Syntax aneignen die es scheinbar gibt. D.h. folgendes:

Alt:

Code: Alles auswählen

self.ui.connect(self.ui.url_drop, QtCore.SIGNAL("currentIndexChanged(QString)"), self.key_show)
Neu wäre zZ so:

Code: Alles auswählen

self.ui.url_drop.currentIndexChanged.connect(self.key_show)
Jetzt stellt sich mir die Frage wie ich bei der neuen Schreibweise den default overload ändern kann. So würde ich naemlich einen int bekommen (den Index des Drop Down Menüs), bei der alten Schreibweise hingegen bekomme ich einen String zurück den ich in meiner Funktion weiter verarbeiten kann.

Ich habe leider in den Referenzen nichts gefunden, weil ich auch nicht genau weiß nach was ich dort suchen soll. Wenn jemand jetzt natürlich nen Referenzlink hat den er mir an den Kopf knallen kann wär ich auch dankbar und beschämt zugleich ;)

Re: Signale / Overload nach neuer API

Verfasst: Freitag 6. August 2010, 16:01
von BlackJack
Ungetestet:

Code: Alles auswählen

self.ui.url_drop.currentIndexChanged['QString'].connect(self.key_show)
Das sollte aber auch in der Dokumentation zu finden sein.

Re: Signale / Overload nach neuer API

Verfasst: Freitag 6. August 2010, 16:57
von ftx
Schönen Dank, das funktioniert :)

Wieder ein wenig schlauer geworden

Re: Signale / Overload nach neuer API

Verfasst: Samstag 7. August 2010, 15:35
von lunar
Statt einer Zeichenkette kannst Du auch direkt den Typ selbst angeben.

Code: Alles auswählen

self.ui.url_drop.currentIndexChanged[QString].connect(self.key_show)