Am Montag, 7. Oktober 2002 23:37 schrieb Joerg Frings-Fuerst:
Hallo,
ich habe mit dem qt-Designer einen Dialog erstellt und möchte den in ein Programm einbinden.
Den ganzen Tag habe ich mich schon durch die Docu und die Examples gewälzt, oder nchts gefunden; bzw. nur Beispiele in denen die Fenster per Programmcode erzeugt wurden.
Über google habe ich zwar ein paar Seiten gefunden, die beschreiben aber etwas umfangreichere Version des Designers.
Das Projekt habe ich mit KDevelop angefangen. Installiert sind die Pakete unter SuSE 8.1.
Schon mal vielen Dank im Voraus.
Jörg Hallo Jörg,
das ist eigentlich total einfach, wenn man es ein paar mal gemacht hat-v.a. wenn du KDevelop benutzt :-) Also der Ablauf: Ich nehme an dein Form hat den Namen TestDialog. Speichere es unter testdialog.ui oder einen namen den Du möchtest. gleichlautende wären aber nicht schlecht zur späteren Identifikation der Header-Datei. Lade dein Projekt in KDevelop und rufe "Projekt/ Vorhandene Datei hinzufügen" auf. Wähle nun deine .ui Datei aus. ACHTUNG: Die Anwendung der CPP/Header Vorlage deaktivieren!!! Anschließend einmal das Projekt kompilieren und es werden automatisch die dateien "testdialog.h, testdialog.cpp und testdialog.moc" erzeugt. Die .h -datei kannst du noch deinem projekt hinzufügen, dann kriegst du auch eine passende Klassenvorschau. Um den Dialog nun aufzurufen, einfach folgenden Code in deinem Slot einfügen: void slotTestDialog() { TestDialog dlg(this); // this ist ein Widget, z.B. dein MainWindow int result = dlg.exec(); // modal ausführen if (result == QDialog::Accepted) { // wenn accept() von QDialog aufgerufen wurde (z.B. durch OK-Button) // hier den Code ausführen } } Ach ja, du musst natürlich in der Datei, in der Du den o.g. Slot einfügst, noch die Header-Datei includen ! #include "testdialog.h" Das wars und es sollte auch funktionieren. Hope that helps, Christoph