Seite 1 von 1

Und wiedereinmal der Qt4-Designer...

Verfasst: 1. September 2007 14:23
von D.Cent
Hallo,

Bisher habe ich eigentlich immer zum programmieren den Qt3-Designer benutzt.
Ich habe dort Formen erstellt und dazu eine sogenannte "*.ui.h"-Datei erstellt. Dort habe ich dann gewohnheitsmäßig immer meine eigenen Funktionen reingeschrieben, um zum Beispiel bei einen Klick auf pushButton1 eine Datei herunterzuladen.

Da ich meine Projekte jetzt auf Windows portieren möchte, muss ich auf Qt4 wechseln.
Ich öffnete die *.ui-Datei mit dem Qt4-Designer und sie wurde zu Qt4 konvertiert.

So weit so gut, doch leider finde ich genau die oben genannte Funktion nicht (sprich, nach einen Kompiliervorgang passiert nichts beim drücken auf den Knopf).

Wie bekomme ich meine *.ui.h-Dateien jetzt wieder in meine Projekte rein?

Vielen Dank im voraus!

Verfasst: 1. September 2007 14:32
von -=Freaky=-
am besten eine klasse ableiten vom im designer erstellten fenster und da dann die funktionen implementieren, im konstruktor die clicked-signals connecten etc.

im assistant ist das alles gut beschrieben.

mfg,
julian

Verfasst: 1. September 2007 14:56
von D.Cent
Nun gut, ich habe mir den Assistant angeschaut, der besagte, ich muss bei den Includes genau diese Headerdatei einfügen (unter Formsettings).

Doch jetzt will mir der Compiler weiß machen, er würde die Klasse/das Objekt nicht kennen. :(

Verfasst: 1. September 2007 15:43
von -=Freaky=-
hast du das ui-file in das pro-file eingetragen und qmake nochmal ausgefuehrt um das makefile zu aktualisieren?

mfg,
julian

Verfasst: 1. September 2007 16:01
von D.Cent
Ja, habe ich.

Ausserdem sind jegliche Versuche, die *.ui.h-Datei einzubinden, gescheitert.

Verfasst: 1. September 2007 17:08
von Christian81
Das ganze Handling hat sich von Qt3 nach Qt4 geändert. Ich würde mir einfach mal die Designer-Tutorials durchlesen...

Verfasst: 2. September 2007 12:00
von dontinelli
Vielleicht noch als Tipp: Die Dateien heissen jeweils "ui-*.h" und nicht "*.ui.h".

Verfasst: 2. September 2007 12:27
von D.Cent
Ja, aber diese Dateien werden automatisch generiert und überschrieben, sobald ich etwas an der Form ändere.

Bei Qt3 konnte man noch eine sogenannte ui.h-Datei erstellen (Rechtsklick auf die Form und "Source" auswählen).

Doch genau diese Funktion gibt es nicht beim Qt4-Designer (Version 4.2.0).

Verfasst: 2. September 2007 13:35
von -=Freaky=-
nein, deshalb sollst du ja das designer-tutorial lesen.
ist doch im assistant von qt4 beschrieben wie das bei qt4 gemacht wird.

mfg,
julian

Verfasst: 3. September 2007 08:03
von dontinelli
Wie Freaky schon gesagt hat, musst du einfach die Ui-Klasse ableiten. In der neuen kannst du dann nach belieben eigene Funktionen deklarieren und die bleiben ja dann auch, wenn du die ui.h neu generierst.