Ich möchte in einem, mit dem Designer (Qt 4.4 unter Linux) erzeugten, eigenständigen Dialog einen eigenen Slot erzeugen, der mit dem PushButton "btnAbout" verbunden werden soll, um eine QMessageBox aufzurufen.
Bei Qt3 Designer konnte man noch eigene Slots anlegen, dieses Feature scheint es unter Qt4 Designer nicht mehr zu geben.
Ich bin völlig ratlos, habe gerade erst mit der Qt-Programmierung angefangen - allerdings nach "C-- GUI-Programmierung mit Qt3" von Blanchette/Summerfield.
Da ich aus Gründen der Portierbarkeit nach Windows aber Qt4 nutzen soll, steh' ich nun wie der Ochs' vor'm Berg. "init()" gibt's wohl auch nicht mehr - damit hatte ich z.B. meinem LineEdit beigebracht, nur Zahlen anzunehmen - bekomme ich unter Qt4 auch (noch) nicht hin.
Kann mir jemand kurz am Beispiel zeigen, wo ich eigene Slots implementieren muss, und wie ich dem LineEdit wieder sagen kann, dass es nur Zahlen akzeptieren soll?
Ich habe die Sourcen zum Problem als Archiv angehängt.
Vielen Dank schonmal für jeden Hinweis!!
Grüße aus Thaden, Schleswig-Holstein,
Michael
eigene Slots für mit Qt4-Designer erzeugten Dialog
eigene Slots für mit Qt4-Designer erzeugten Dialog
- Dateianhänge
-
- Fenster.zip
- Die Sourcen zum Problem...
- (23.22 KiB) 138-mal heruntergeladen
-
dontinelli
- Beiträge: 146
- Registriert: 22. September 2006 20:53
Hallo!
Die Doku umschreibt ausführlich, wie das ui-Wesen unter Qt 4.x funktioniert:
http://doc.trolltech.com/4.4/designer-u ... processing
Du musst dein Dialog ableiten und in dieser Klasse kannst du dann nach belieben Signals, Slots und natürlich auch andere Funktionen definieren. Dank dem automatischen Connector reicht es, wenn du eine funktion nach folgendem Muster deklarierst, welche beim moc dann automatisch mit dem entsprechenden Signal verbunden wird:
Das Problem mit der LineEdit lässt sich über eine inputMask lösen.
Die Doku umschreibt ausführlich, wie das ui-Wesen unter Qt 4.x funktioniert:
http://doc.trolltech.com/4.4/designer-u ... processing
Du musst dein Dialog ableiten und in dieser Klasse kannst du dann nach belieben Signals, Slots und natürlich auch andere Funktionen definieren. Dank dem automatischen Connector reicht es, wenn du eine funktion nach folgendem Muster deklarierst, welche beim moc dann automatisch mit dem entsprechenden Signal verbunden wird:
Code: Alles auswählen
void on_widget_signal(parameter)