Slot wird nicht erkannt in Python

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
stockie
User
Beiträge: 16
Registriert: Donnerstag 8. Februar 2007, 13:26

Hallo liebe Leute,

ich hab folgendes Porblem:
1) Ich hab mit dem QT Creator 2.1 ein Widget erstellt
2) In dem QT Creator einen Button mit einem neuen Slot verknüpft
2) Die UI datei mit pyuic (PyQT) eine pyton File erstell
Soweit alles tool, nun aber zum Problem wenn ich die Python laufen lasse
bekomme ich folgende Fehlermeldung:
QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL(_fromUtf8("clicked()")), Widget.start)
AttributeError: 'QWidget' object has no attribute 'start'
"Start" wäre hierbei der Slot den ich in dem Creator angelegt habe.

Vielleicht habt Ihr ja eine Idee?
BlackJack

@stockie: Also erst einmal solltest Du Dir einig werden ob es nun `start` oder `Start` ist. Wo kommt denn `Widget` her? Das ist ja vom Typ her laut Fehlermeldung ein `QWidget` und die haben tatsächlich kein `start`-Attribut. Und ich bin mir ziemlich sicher dass man denen auch keines verpassen kann.

Am Rande: Du solltest die neue Methode zum Verbinden von Signalen und Slots verwenden (die mittlerweile gar nicht mehr so neu ist):

Code: Alles auswählen

self.pushButton.clicked.connect(whatever.start)
stockie
User
Beiträge: 16
Registriert: Donnerstag 8. Februar 2007, 13:26

Hallo Black Jack,

erstmal Danke für Deine Hilfe, aber ich hatte die ganze Ereignissteuerung über die Generierung von Pyuic (PyQT) versucht, aber
bei mir hat es nicht nicht geklappt auch nicht mit einer Umbenennung vom Button oder Slot bzw. der Form.
Nun hab ich den Slot und das Ereignis in dem QT Creator entfernt und manuell in Python hinzugefügt und dass
hat geklappt. :P

Grüsse
Antworten