Installation
Linux
Die Installation des Qt-Creators wird unter Linux durch den folgenden Befehl erreicht:apt install build-essential qt5-defaultUm den Designer mit an Bord zu haben, wurde bei Qt4 noch das Paket qt4-designer installiert. Bei Qt5 ist dieser im Paket qttools5-dev-tools eingebunden.
apt install qttools5-dev-toolsNach der Installation befindet sich die Qt-IDE im Linux-Anwendungsmenü unter dem Eintrag Entwicklung.
Windows/Mac
Auf der Downloadseite von qt.io kann eine Version gekauft oder getestet werden. Daneben stehen Installationsprogramme für die Open-Source-Variante eines zum Download bereit.Start der Entwicklungsumgebung
Im Linux-Menü Anwendungen-Entwicklung startet man den Qt-Creator. Nach dessen Start erscheint ein Fenster, in dem auf der linken Seite mehrere Buttons erscheinen.- Projekte: Laden, importieren von Projekten oder Anlegen eines neuen Projekts
- Beispiele
- Anleitungen
- Schnelleinstieg: Ein Link auf die Dokumentation von Qt
Mit dem Button Neues Projekt erstellen Sie ein neues Projekt.
- Anwendung: Qt-Projekte, insbesondere Qt-Widgets-Anwendung oder Qt-Konsolenanwendung.
- Projekt ohne Qt: Reine C Anwendung oder Reine C++ Anwendung.
- Projekt importieren: Ermöglicht das Einbinden von Projekten aus verschiednen Versionsverwaltungen.
Neues Projekt für Qt-Widgets-Anwendung
- Neues Projekt - Anwendung - Qt-Widgets-Anwendung dann auf den Button Auswählen
- Name eingeben. Der Pfad kann über eine Auswahlbox neu bestimmt werden. Weiter
- Als Kit wird Desktop vorgeschlagen. Weiter
- Parameter der Klasse: Hier können Sie die Namen der Quelltexte ändern. Weiter
- Projektverwaltung: Sie können die Versionsverwaltung auswählen. Abschließen
Starten des Projekts
Durch Klick auf das grüne, nach rechts deutende Dreieck wird das Projekt gestartet und es erscheint ein Fenster mit der Überschrift MainWindow. Es reagiert auf die Schließbox, indem es endet.Der Klick auf das grüne, nach rechts deutende Dreieck mit dem Käfer startet den Debugger.
Der Hammer bewirkt den Abbruch, wenn eine Anwendung nicht mehr reagiert oder nicht enden will.
Projekte
In der linken Spalte ist die Projektleiste. Dort findet man- Die Projektdatei mit der Endung .pro
- Einen Ordner Header-Dateien
- Einen Ordner Quelldateien
- Einen Ordner Formulardateien. Klappt man dieses auf, erscheint eine Datei mit der Endung .ui. Durch Doppelklicken kann man dieses im Designer oder im Editor bearbeiten. Es handelt sich um eine XML-Datei, die das Erscheinungsbild des Fensters beschreibt.
Designer
Wir erstellen eine Beispielanwendung zur Berechnung des BMI. Im Designer wird das Hauptfenster zusammengeklickt.Der Designer ist in mehrere Fenster aufgeteilt.
- In der linken Spalte sind eine Reihe von Widgets aufgeführt. Diese können per Drag and Drop auf das Fenster gezogen werden.
- In der Mitte befindet sich das Fenster, das bearbeitet wird und in das die Widgets geworfen werden.
- Auf der rechten Seite zeigt das Fenster Objekt die Objekte, die im Fenster vorhanden sind. Hier können Namen und Eigenschaften geändert werden.
Unter Display Widgets finden Sie ein Label. Davon können Sie vier auf dem Fenster verteilen. Drei dienen der Beschriftung (Größe, Gewicht, BMI) und eines soll das Ergebnis aufnehmen. Dort setzen wir eine 0 ein.
Da es das vierte ist, erhält es vom Designer den Namen label_4. Das ändern wir in lblBmi unter Objekt auf der rechten Seite.
Unter Input Widgets gibt es ein Line Edit. Das ziehen Sie rechts neben das Größe-Label, lassen es fallen und ändern den Namen auf edGroesse. Das wiederholen Sie für das Gewicht und nennen dieses edGewicht.
Unter Buttons finden Sie einen Push Button. Sie schieben ihn auf das Fenster und nennen ihn btBmi.
Nach dem Start hat das Fenster die Elemente, aber der Button bewirkt nichts.
Klick-Event abfangen
In der Objektliste klicken Sie den Button btBmi mit der rechten Maustaste an. Im Menü finden Sie Slot anzeigen.... Wenn Sie dieses auswählen, erscheint ein Dialog mit den möglichen Aktionsslots des Buttons. Wählen Sie clicked() und bestätigen Sie mit OK.Mit einem Mal landen Sie im Quellcode des Hauptfensters und die Methode on_btBmi_clicked wurde angelegt. In der Header-Datei finden Sie einen Eintrag für private_slots und hier wurde die Methode deklariert.
Die Methode wird bei jedem Klick aktiviert. Sie soll den BMI aus den beiden Eingabefelder errechnen und in den Label stellen.
void MainWindow::on_btBmi_clicked() { int groesse = ui->edGroesse->text().toInt(); int gewicht = ui->edGewicht->text().toInt(); double bmi = gewicht / (groesse*groesse / 10000.0); QString str = QString("%1").arg(bmi); ui->lblBmi->setText(str); }Über den Zeiger ui kann die Methode auf alle im Designer definierten Widgets zugreifen. Die Line Edits geben ihren Inhalt über die Methode text heraus. Das Ergebnis ist vom Typ QString. Dessen Methode toInt wandelt die Zeichenkette in eine Zahl.
Nun wird die BMI-Funktion auf die beiden Werte angewandt. Das Ergebnis ist eine Fließkommazahl. Die muss in das Label, das über seine Methode setText aber nur einen QString haben will. Das erledigen wir über eine Umwandlung der Methode arg.