Qt Einstieg / Projekt-Design



  • Hallo Forum,

    ich bin relativ neu bei Qt und habe zum Ausprobieren ein kleines Tool mit QML und C++ geschrieben, womit ich zumindest schonmal die Grundlagen gelernt habe. Soweit hat alles ja schonmal gut geklappt und QML fängt an mir zu gefallen 🙂

    Mein eigentliches Projekt, das ich plane, soll allerdings ein wenig umfangreicher sein. Das Programm soll am Ende ein Multi-Document Fenster mit ein paar Dock-Fenstern sein, Toolbars und Menüs, die zum Teil abhängig vom Inhalt des gerade aktiven Dokuments sind. Später ggf mit Plugin-Unterstützung.

    Da ich bei Qt noch relativ neu bin, steh ich da nun erst mal vor vielen Fragen 🙂
    Sollte man z.B. den MDI-Rahmen mittels "klassichem" Qt schreiben? Macht es überhaupt Sinn, QT-Formulare und QML zu mischen, oder sollte man sich eher für eines davon entscheiden und dabei bleiben? Bisher habe ich eigentlich nur Programme gesehen, die entweder das eine oder das andere benutzt hatten. Der QtCrator selbst scheint auch so gut wie kein QML zu benutzen.

    Vielleicht kann ja auch jemand ein Opensouece-Programm empfehlen, das einen ähnlichen Aufbau hat, idealerweise auf Multi-Platform ausgelegt, wo man sich ein wenig die "Best Practice" abschauen kann.

    Vielen Dank schonmal für eure Antworten 🙂



  • Großes Open Source Projekt, das Qt benutzt -> KDE. Im KDE 5 ist sicherlich auch einiges mit QML gemacht.



  • Hatte ich auch schon überlegt, aber KDE ist halt doch schon etwas umfangreicher.

    Lassen sich die Programme da auch einzeln kompilieren, ohne dutzende Libs mit auschecken zu müssen? Idealerweise auch unter Windows?



  • Naja, es gibt da viele einzelne Programme die zum KDE Projekt gehören. Ich kenn mich da auch nicht aus, benutze kein KDE. Gab mal eine Version für Windows, gibts wahrscheinlich immer noch, aber auch keine Ahnung wie da der Stand ist.
    Ich persönlich finde das QML Zeugs uninteressant. Hab ich mir noch nie angeschaut, hab ich zur Zeit auch nicht vor. Vielleicht interessant für kleinere Spielereien, Mobile usw., aber wenn man sich mit normalem Qt auskennt nicht wirklich nötig.



  • Mit normalem Qt kenne ich mich halt auch noch nicht so gut aus. Ich hab bisher eher Erfahrung mit UIs in Java, da kommt einem doch irgendwie alles wie eine Verbesserung vor 🙂
    Meine kleine Demo-App hat sich Daten aus einer DB gezogen und in einer TableView angezeigt, wobei ich für die einzelnen Spalten festlegen konnte, hier wird Text angezeigt, da ein Bild, in der nächsten ein Prozentwert mit einem entsprechendem Balken im Hintergrund... Ich weiß nicht wie gut sowas in Qt ginge, aber wenn ich mir alleine überlege wie viel Aufwand das in Java/Swing bedeutet hätte, puuuhh...
    Von daher interessiert mich schon, wie sinnvoll es ggf. ist, Qt-Forms und QML zu mischen, also beispielsweise das Grundgerüst mit MDI-Fenster und Dock-Widgets via Forms/klassisches Qt und einzelnen Komponenten in QML.

    Ich hatte anfangs auch ein bisschen den Eindruck, daß QML-Apps doch ein bisschen zu sehr.. naja wie Mobile-Apps.. aussehen. Wenn man sich aber das Component-Gallery Beispiel im QtCreator anschaut, dann macht das Beispiel doch schon einen recht schicken, desktop-tauglichen Eindruck.



  • Man kann QML auf jeden Fall in QWidgets integrieren.
    Ja, es mag schon sein, dass QML irgendwie einfach und mächtig ist. Klar, man kann damit ziemlich einfach Animationen usw. ausdrücken, wäre früher recht aufwändig gewesen, sowas zu programmieren. Trotzdem sagt mir der Ansatz nicht wirklich zu. Sowas braucht man halt eher selten bis gar nicht. Und eine "normale" GUI mit Qt zu erstellen ist auch nicht wesentlich schwieriger. Dann kommen aber noch zig andere Anforderungen hinzu, die man eh in C++ programmieren müsste und dann relativiert sich der Vorteil von QML sehr schnell.


Anmelden zum Antworten