# Kapitel 3. Das Erstellen der QT Tutorials

# 3.1. Schritt 1: Hallo Welt!

Wie im vorangehenden Kapitel erläutert, haben wir bereits ein Projekt mit dem Namen `MyWidget` erstellt. Wenn Sie nun die erste Seite des QT Tutorials betrachten, werden Sie feststellen, daß die erste Anwendung nur die Funktion `main()` verwendet. Darum müssen wir jetzt nur die vorgegebene `main()` Funktion unseres Projektes ändern, um das erste Beispiel des Tutorials zum Laufen zu bringen.

Um in den Quelltext der Funktion `main()` zu springen, gehen Sie mit der Maus in den Ordner "Globale", und von dort in den Unterordner "Funktionen", der alle globalen Funktionen enthält, die keiner Klasse angehören. Durch Anklicken des Eintrages von `main()` öffnet sich die Datei `main.cpp` im Fenster "C/C++ Dateien", und der Cursor steht am Anfang der ersten Zeile von `main()`.

## 3.1.1. Die erste Änderung

Wir könnten nun damit beginnen, den vorhandenen Code so zu ändern, daß er dem im Tutorial aufgeführten entspricht. Aber das geht auch einfacher. Markieren Sie den Inhalt von `main()` mit der Maus oder durch Festhalten der "Shift"-Taste, während Sie die Zeilen mit der Pfeil-nach-unten Taste markieren. Wählen Sie nun "Ausschneiden" aus dem Menü "Bearbeiten" oder betätigen Sie die "Entf"-Taste, um den markierten Code zu entfernen. Dadurch erhalten wir eine leere main Funktion, und wir können ganz von vorn beginnen, um unser erstes Tutorial zu erstellen.

Fügen Sie nun den Code aus dem Beispiel ein. Dazu könnten Sie zunächst das Beispiel sorgfältig studieren und sich danach merken, welche Zeile welchen Code enthält. Nachdem Sie dann die zeilenweise Beschreibung des Tutorials gelesen haben, könnten Sie diese als Anleitung verwenden, um den Code selbst zu schreiben.

Nun, wer den einfachen Weg gehen möchte, markiert den Inhalt der `main.()` Funktion im Dokumentationsbrowser und klickt auf das Icon zum Kopieren in der Werkzeugleiste. Alternativ können Sie hierzu auch das Kontextmenü oder den entsprechenden Eintrag aus dem Menü "Bearbeiten" benutzen. Hierdurch wird die Markierung in die Zwischenablage kopiert und kann, nachdem wir ins Quelltext Fenster zurückgekehrt sind, über "Einfügen" (entweder aus dem Kontextmenü, der Werkzeugleiste oder dem entsprechenden Eintrag im Menü "Bearbeiten") in unsere `main.()` Funktion eingefügt werden.

Abschließend fügen Sie die Einträge zum Einbinden der entsprechenden Headerdateien außerhalb (und vor!)der `main()` Funktion hinzu.

     #include <qapplication.h>
     #include <qpushbutton.h>

Das war's. Da haben Sie den Quellcode für Ihre erste Tutorial Anwendung!

## 3.1.2. Wir übersetzen Hello World!

Um das erste Tutorial zu übersetzen, wählen Sie im Menü "Erstellen" den Punkt "Erstellen", oder klicken Sie auf das entsprechende Icon in der Werkzeugleiste. Genausogut können Sie "Ausführen" nehmen, was dazu führt, daß die Anwendung nach dem Erstellen gestartet wird. Tritt während des Erstellens ein Fehler auf, können Sie davon ausgehen, daß der Fehler beim Programmierer liegt, nicht beim Tutorial! Es wäre zwar traurig, wenn Sie jetzt schon nach einem Fehler suchen müssen, wo Sie doch gerade erst anfangen KDE und/oder QT zu programmieren, aber nutzen Sie diese Gelegenheit einfach dazu, sich im Umgang mit KDevelop zu üben.

Jetzt gibt es für Sie zwei Möglichkeiten, einen Fehler zu finden: Entweder Sie gehen auf die entsprechende Zeile in der Ausgabeansicht, oder Sie drücken F4. Beides führt dazu, daß im Quelltext die Zeile angesprungen wird, in der der Fehler auftrat. Das selbe Ziel erreichen Sie im Menü "Ansicht", indem Sie dort den Menüpunkt "Nächster Fehler" auswählen.

## 3.1.3. Übungen

Übungen? Was soll das? werden Sie sich fragen. Das war so einfach, ich brauche keine Übungen. Aber seien Sie gewiß, es wird noch komplizierter. Das vorangegangene Beispiel war das leichteste, aber mit wachsender Komplexität wird von Ihnen mehr Mitdenken gefordert werden, damit Sie den weiteren Schritten des Tutorials folgen können und die Beispiele verstehen.

Darüberhinaus lernen Sie durch diese Übungen, wie man KDevelop und seine Möglichkeiten einsetzt. Um noch ein wenig mehr aus dem ersten Tutorial zu lernen, sollten Sie einmal versuchen, am bestehenden Code die nachstehenden Änderungen vorzunehmen. Finden Sie heraus, welchen Einfluß diese Änderungen auf das Verhalten der Anwendung haben.

1. Ändern Sie den Pushbutton in ein QLabel.

2. Verzichten Sie auf das direkte Setzen des Textes für den Pushbutton im Konstruktor, und verwenden Sie stattdessen `setText()`.

3. Verwenden Sie `QPushButton::resize ( const QSize & s )` anstelle des direkten Setzens von Höhe und Breite. Legen Sie dazu zunächst eine Instanz von `QSize` mit der gewünschten Größe an.

4. Spielen Sie mit den Größen herum, um zu sehen, welche Höhe oder Breite beeinflußt.