Qt Quick nur für Oberfläche?

Alles rund um die Programmierung mit Qt Quick und QML
Antworten
freakonaleash99
Beiträge: 43
Registriert: 23. Juli 2017 12:35

Qt Quick nur für Oberfläche?

Beitrag 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
hilefoks
Beiträge: 144
Registriert: 13. März 2008 16:09

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

Beitrag 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
freakonaleash99
Beiträge: 43
Registriert: 23. Juli 2017 12:35

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

Beitrag von freakonaleash99 »

Ok vielen Dank für die ausführliche Antwort!
Hat mir sehr weiter geholfen!
Antworten