Seite 1 von 1

Qt Quick nur für Oberfläche?

Verfasst: 6. August 2017 12:30
von freakonaleash99
Hallo zusammen,
ich habe vor kurzem QtQuick entdeckt wozu ich nun ein paar Fragen habe:
1. Eigentlich dachte ich, dass QtQuick rein zum Designen der Gui gedacht ist und die Funktionen dann weiterhin mit C++ (mit Klassen) usw. umgesetzt wird. Allerdings finde ich nirgendwo Informationen darüber (auch keine Tutorials), wie ich die .qml - Oberflächen mit den Klassen bzw. c++ code verknüpft werden können. Daher die Frage, ob das überhaupt so gedacht ist oder ob QtQuick eigenständig ist. Wenn nicht, hat jemand tipps wo die "Verknüpfung" im Beispiel dargestellt ist?

2. Die Syntax von .qml muss man ja auch erstmal lernen und wissen, welche Möglichkeiten es gibt. Für die Qt-Widget Anwendungen benötigt man ja c++, so dass ich mir die Grundlagen in einem c++ Buch durchlesen konnte.
Wie gehe ich denn nun am besten vor, um QML zu lernen? Die Qt Doku finde ich bezüglich QML recht unübersichtlich, da die Seiten kurz sind und man auf jeder Seite 100Möglichkeiten hat, sich weiter zu klicken.


Grüße

Re: Qt Quick nur für Oberfläche?

Verfasst: 30. Oktober 2017 09:18
von TimsonC2000

Re: Qt Quick nur für Oberfläche?

Verfasst: 30. November 2017 14:04
von hilefoks
freakonaleash99 hat geschrieben:1. Eigentlich dachte ich, dass QtQuick rein zum Designen der Gui gedacht ist und die Funktionen dann weiterhin mit C++ (mit Klassen) usw. umgesetzt wird.
QML, Qt Meta-object Language, ist eine deklarative Programmiersprache. Sie hat so erst einmal nichts mit UI zu tun. Gleichwohl ist QML insbesondere im Hinblick auf UI-Entwicklung entworfen worden. Es gibt aber auch Projekte die QML für Konfigurationsdateien, als Scripting-Sprache oder für andere Zwecke einsetzen. Ein Beispiel wäre QBS.

QML kann als eigenständige Programmiersprache verwendet werden. Sprich - eine Anwendung kann komplett in QML geschrieben sein. Der häufigere Fall ist aber, das die Business Logic in C++ und nur die UI in QML entwickelt wird. Insofern bietet QML auch einige Möglichkeiten mit C++ zu kommunizieren.

QtQuick ist das Qt User Interface Creation Kit. QtQuick bietet einfache grafische Komponenten (Rectangle, Text, ...). Fertige UI-Komponenten finden sich dann in QtQuick Controls.
freakonaleash99 hat geschrieben:2. Die Syntax von .qml muss man ja auch erstmal lernen und wissen, welche Möglichkeiten es gibt. Für die Qt-Widget Anwendungen benötigt man ja c++, so dass ich mir die Grundlagen in einem c++ Buch durchlesen konnte.
Wie gehe ich denn nun am besten vor, um QML zu lernen? Die Qt Doku finde ich bezüglich QML recht unübersichtlich, da die Seiten kurz sind und man auf jeder Seite 100Möglichkeiten hat, sich weiter zu klicken.
C++ und Qt Kenntnisse werden für die meisten realen Anwendungen weiterhin benötigt. Für QML können JavaScript-Kenntnisse nicht schaden.TimsonC2000 nannte schon das QmlBook Projekt. Ansonsten gibt es einige Beispielprojekte die direkt in Qt Creator zur Verfügung stehen. Auch würde ich sehr Qt Creator zumindest für die QML/QtQuick-Entwicklung empfehlen.

MfG
Hilefoks

Re: Qt Quick nur für Oberfläche?

Verfasst: 7. Dezember 2017 19:13
von freakonaleash99
Ok vielen Dank für die ausführliche Antwort!
Hat mir sehr weiter geholfen!