PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : KDevelop-QtDesigner Anfängerprobleme



Alfons
26-09-2004, 16:10
Hallo,

seit Jahren versuche ich es immer wieder, mit KDevelop und dem Qt-Designer eine ganz einfache grafische Oberfläche versuchsweise zu programmieren.

Obwohl ich mit den 'rapid-development-tools' für Pascal/Delphi, C#, Borland-Java immer schnell einige Oberflächen zusammenklicken und damit ein lauffähiges Programm machen konnte, ist mir dies mit KDevelop bisher noch nie gelungen.

Jetzt - angespornt von den Anfängererfolgen mit Kanotix - habe ich's wieder 'mal probiert.

Mit dieser Anleitung: http://women.kde.org/articles/ kam ich zunächst auch gut voran, ich schaffe es aber einfach nicht, die im QtDesigner 'zusammengeklickte' Oberfläche in den Programmcode zu bringen.

In diesem Thread ( http://kanotix.mipooh.net/viewtopic.php?t=2889 ) bin ich im Zusammenhang mit meinen Problemen auf dieses Forum aufmerksam gemacht worden.

Vielleicht kann mir hier jemand helfen und weiß ein DAU-geeignetes Tutorial, mit dem auch ein C++ Anfänger über die ersten Schwierigkeiten hinwegkommt.

Schon 'mal Danke!
Alfons

peschmae
26-09-2004, 16:35
Ich finde du versuchst am falschen Ende anzufangen. Imo besser erst von Hand coden und dann den Designer verwenden anstatt umgekehrt.

MfG Peschmä

undefined
26-09-2004, 17:03
Wenn du einmal die Fehlermeldungen posten wüdest könnte dir man auch in etwa sagen wo das Problem liegt ;)

Boron
26-09-2004, 17:22
Angenommen du bastelst ein Dialogfenster für Einstellungen. Dann nennst du das Fenster (auch somit die Dialogklasse) im Qt-Designer z.B. MeinDialogBase.
Der Designer speichert die zusammengeklickte Oberfläche in einer meindialogbase.ui Datei (ist in XML).
Der "uic" (user interface compiler) macht daraus eine meindialogbase.h und meindialogbase.cpp. Allerdings wird der uic automatisch von KDevelop aufgerufen, darum musst du dich nicht kümmern.

Das einfachste ist nun von z.B. dem Dialog abzuleiten, also meindialogbase.h includieren und dann einen neue Klasse MeinDialog von MeinDialogBase ableiten.

In meindialog.h und cpp kannst du dann programmieren wie du willst, also die von dir gewünschte Funktionalität einbauen.
Die Oberfläche steckt dann schön unabhängig in der Base Klasse.

So mache ich das, weil ich das schön aufgeräumt finde und ich auch schön debuggen kann.

Alfons
26-09-2004, 19:28
Danke Boron,

so transparent ist mir dies noch nie erklärt worden!

Das heißt nun für mich: Weg von schematischen Tutorials, Gehirn einschalten und diesen Weg versuchen nachzuvollziehen.

Alfons

BlueJay
26-09-2004, 21:17
Ich kann peschmae nur bestätigen. Auch ich wollte Qt zunächst wie Visual Basic benutzen, habe dabei aber Schiffbruch erlitten.

Im Qt-Assistant findest du einige Tutorials, da solltest du dich erst mal durchboxen.
Sollte der Kram nicht mit installiert worden sein, hier checken:
http://doc.trolltech.com/

so long

peschmae
26-09-2004, 21:30
A propos Qt - das Coole Buch gibts jetzt auch online als PDF wie mir Cybercrow kürzlich beigebracht hat:
http://phptr.com/promotion/1484?redir=1
http://phptr.com/content/images/0131240722/downloads/blanchette_sourcecode.zip
http://phptr.com/content/images/0131240722/downloads/blanchette_book.pdf

MfG Peschmä