# 10.3. Erzeugen des Dialogs für die Stiftweite

Da wir schon die Menüleisten- und Werkzeugleistenkommandos erstellt haben, müssen wir jetzt unseren ersten Dialog für das Setzen der Stiftweite erzeugen. Dazu wählen Sie "Neu" aus dem Dateimenü und dann "Qt/KDE Dialog". Geben Sie als Dialognamen `kpenbrushdlg` ein, die Erweiterung wird automatisch angehängt. Wählen Sie "OK" und der Dialogeditor öffnet ein leeres Widget, das den Hintergrund für unseren Dialog bilden wird. Wenn wir einen Dialog entwerfen, müssen wir uns überlegen, was der Benutzer wirklich braucht; in unserem Fall brauchen wir ein Label, das beschreibt, was geändert wird, eine Spinbox mit auf und ab Knöpfen zum Setzen der Stiftweite und drei weitere Knöpfe: einen zum Zurücksetzen der Weite, einen zum Abbrechen des Dialogs und einen zum Übernehmen des neuen Wertes - den "OK" Knopf. In dieser Reihenfolge werden wir die Elemente auch hinzufügen, was wichtig ist, weil der Fokus der Tabulatortaste der Reihenfolge folgt, in der die Widgets erstellt werden. D.h., wenn Sie mit dem "OK" Knopf anfangen, bringt uns das Drücken der Tabtaste zuerst zur Spinbox und dann zum "Cancel" Knopf - was so nicht erwartet wird. Der Tabfokus sollte den Elementen von oben nach unten und von links nach rechts folgen, also müssen wir den Dialog auch in dieser Reihenfolge erstellen. Um Elemente zum Dialog hinzuzufügen, wählen Sie den Widgets Tabulator im linken Panel. Dort werden alle verfügbaren Widgets durch Icons repräsentiert, damit Sie Ihren Dialog erstellen können. Ein Druck auf ein Widget Icon erzeugt das neue Element in der linken, oberen Ecke des Hauptwidgets. Von dort können Sie es mit der Maus zu der Position ziehen, an der Sie das Element haben wollen. Desweiteren können Sie die Einstellungen für das gewählte Widget im "Widgeteigenschaften" Panel auf der rechten Bilschirmseite vornehmen.

Das Label: Wählen Sie `QLabel` aus dem Widgettabulator und plazieren Sie es an Position x:50, y:20. Dann gehen Sie zum "General" Abschnitt in den Widgeteigenschaften. Ändern Sie den Text der Eigenschaft "Text" von "Label:" nach "Pen Width:". Passen Sie die Breite in x-Richtung dem Text des Labels an, ein Wert von 120 sollte reichen. Sie können dies entweder mit der Maus machen, oder den Wert im "Geometry" Abschnitt eingeben.

Die Spinbox: Wählen Sie `QSpinbox` und plazieren Sie sie rechts neben dem eben erstellten Label. Setzen Sie den Variablennamen im Abschnitt "C++ Code" auf "width&_;spbox". Die Minimal- und Maximalwerte sind 1 und 100, was für unsere Stiftweite ausreichen sollte.

Die Knöpfe: Schließlich brauchen wir noch unsere drei Knöpfe. Der linke Knopf soll der Standardknopf sein. Erzeugen Sie einen `QPushbutton` und plazieren Sie ihn an einer günstigen Stelle unten im Dialog, setzen Sie den Variablennamen auf "default&_;btn" und den Text auf "Default". Machen Sie das gleiche mit dem "OK" Knopf, Variablenname "ok&_;btn" und dem "Cancel" Knopf, Variablenname "cancel&_;btn". Setzen Sie die Knopftexte auf "&&;OK" und "&&;Cancel".

Wenn Sie mit Ihrem Layout zufrieden sind, wählen Sie "Alle Quellen erzeugen" aus dem "Erstellen" Menü, geben Sie als Klassennamen "KPenBrushDlg" ein und wählen Sie `QDialog`. Nachdem Sie "OK" gedrückt haben, werden die Quellen für Ihren Dialog erzeugt und dem Projekt hinzugefügt. Sie können nun wieder zur Editoransicht in KDevelop zurückkehren und wir können den Code hinzufügen, der benötigt wird, damit der Dialog auch etwas macht.