Signale / Overload nach neuer API

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
ftx
User
Beiträge: 2
Registriert: Freitag 6. August 2010, 15:32

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 ;)
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.
ftx
User
Beiträge: 2
Registriert: Freitag 6. August 2010, 15:32

Schönen Dank, das funktioniert :)

Wieder ein wenig schlauer geworden
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)
Antworten