Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einführung
2 Grundlagen
3 Fehlerbehandlung
4 Erweiterte Grundlagen
5 Objektorientierte Programmierung
6 Wichtige Klassen in .NET
7 Weitere Elemente eines Windows-Programms
8 Datenbank-Anwendungen mit ADO.NET
9 Internet-Anwendungen mit ASP.NET
10 Zeichnen mit GDI+
11 Beispielprojekte
12 Windows Presentation Foundation
13 Windows Store-Apps für Windows 8
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
C Inhalt der Buch-DVD
D Der Autor
Stichwort

Jetzt Buch bestellen
Ihre Meinung?

Spacer
Einstieg in Visual Basic 2012 von Thomas Theis
Ideal für Programmiereinsteiger geeignet
Buch: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Rheinwerk Computing
579 S., 3., aktualisierte und erweiterte Auflage 2013, brosch., mit DVD
24,90 Euro, ISBN 978-3-8362-1959-4
Pfeil 7 Weitere Elemente eines Windows-Programms
Pfeil 7.1 Hauptmenü
Pfeil 7.1.1 Erstellung des Hauptmenüs
Pfeil 7.1.2 Code des Hauptmenüs
Pfeil 7.1.3 Klasse Font
Pfeil 7.1.4 Schriftart
Pfeil 7.1.5 Schriftgröße
Pfeil 7.1.6 Schriftstil
Pfeil 7.2 Kontextmenü
Pfeil 7.2.1 Erstellung des Kontextmenüs
Pfeil 7.2.2 Code des Kontextmenüs
Pfeil 7.3 Symbolleiste
Pfeil 7.3.1 Erstellung der Symbolleiste
Pfeil 7.3.2 Code der Symbolleiste
Pfeil 7.4 Statusleiste
Pfeil 7.4.1 Erstellung der Statusleiste
Pfeil 7.4.2 Code der Statusleiste
Pfeil 7.5 Eingabe-Dialogfeld
Pfeil 7.6 Ausgabe-Dialogfeld
Pfeil 7.7 Standard-Dialogfelder
Pfeil 7.7.1 Datei öffnen
Pfeil 7.7.2 Datei speichern unter
Pfeil 7.7.3 Verzeichnis auswählen
Pfeil 7.7.4 Farbe auswählen
Pfeil 7.7.5 Schrifteigenschaften auswählen
Pfeil 7.8 Steuerelement ListView
Pfeil 7.9 Steuerelement Chart
Pfeil 7.10 Steuerelement DataGridView

7 Weitere Elemente eines Windows-ProgrammsZur nächsten Überschrift

In diesem Kapitel wird die Programmierung mit bekannten Elementen von Windows-Programmen vorgestellt, die uns täglich begegnen.

Die folgenden Elemente sind selbstverständliche Bestandteile eines Windows-Programms: Hauptmenü, Kontextmenü, Symbolleiste, Statusleiste, Eingabe-Dialogfeld, Ausgabe-Dialogfeld sowie einige Standard-Dialogfelder.

Im Folgenden wird die Klasse Font, die zur Einstellung der Schrifteigenschaften von Steuerelementen dient, gemeinsam mit dem Thema Hauptmenü an Beispielen erläutert.


Rheinwerk Computing - Zum Seitenanfang

7.1 HauptmenüZur nächsten ÜberschriftZur vorigen Überschrift

Hauptmenüs dienen der übersichtlichen Darstellung größerer Sammlungen von Befehlen. Ein Menü kann unter anderem folgende Einträge enthalten:

  • einen Befehl, der direkt ausgeführt wird
  • einen Aufruf eines Dialogfelds, in dem der Benutzer Eingaben machen kann
  • ein Untermenü, das weiter verzweigt

Rheinwerk Computing - Zum Seitenanfang

7.1.1 Erstellung des HauptmenüsZur nächsten ÜberschriftZur vorigen Überschrift

Zur Erstellung eines Hauptmenüs ziehen Sie das Steuerelement MenuStrip aus der Abteilung Menüs & Symbolleisten aus der Toolbox auf das Formular. Es erscheint anschließend an zwei Stellen (siehe auch Abbildung 7.1):

  • im Formular selbst zur Eingabe der einzelnen Menüpunkte, diese stellen wiederum Steuerelemente mit einstellbaren Eigenschaften dar
  • unterhalb des Formulars (ähnlich wie das Zeitgeber-Steuerelement) zur Einstellung der Eigenschaften des Hauptmenüs

Abbildung

Abbildung 7.1 Hauptmenü

Zunächst können Sie im Formular den ersten Punkt des Hauptmenüs eintragen. Anschließend können Sie entweder einen Untermenüpunkt zu diesem Hauptmenüpunkt eintragen (nach unten) oder einen weiteren Hauptmenüpunkt (nach rechts). Dieser Vorgang wird fortgesetzt, bis Sie zuletzt alle Haupt- und Untermenüpunkte (gegebenenfalls mit weiteren Untermenüs unter Untermenüs usw.) eingetragen haben, siehe Abbildung 7.2.

Abbildung

Abbildung 7.2 Hauptmenü, mit Untermenühierarchie

Möchten Sie die Reihenfolge der Menüpunkte ändern, so ist dies problemlos per Drag & Drop möglich. Im vorliegenden Programm wurden die vorgeschlagenen Namen für die Menüelemente etwas verkürzt, damit Sie sie besser im Code handhaben können. Ein Beispiel: Aus der Bezeichnung GelbToolStripMenuItem für den Menüpunkt zur Einstellung einer gelben Hintergrundfarbe wurde mnuGelb.

Ein Hauptmenüpunkt ist entweder

  • ein normaler Menüeintrag,
  • eine ComboBox (= Kombinationsfeld) zur Auswahl bzw. zum Eintrag, wie z. B. die Schriftgröße in der Symbolleiste in Microsoft Word, oder
  • eine TextBox.

Bei einem Untermenüpunkt können Sie zusätzlich noch den Eintrag Separator wählen. Dieser dient zur optischen Trennung von Menüpunkten.

Jeder Menüpunkt stellt ein Steuerelement mit einstellbaren Eigenschaften dar. Menüpunkte können auch per Tastatur ausgewählt werden, wie dies z. B. bei Buttons bereits gemacht wurde. Vor dem Buchstaben, der unterstrichen werden soll, wird das Zeichen & eingegeben, siehe Abbildung 7.3. Das Ergebnis sehen Sie in Abbildung 7.4.

Abbildung

Abbildung 7.3 Unterstrichener Buchstabe

Abbildung

Abbildung 7.4 Bedienung per Tastatur

Außerdem können Sie Menüpunkte mit einem Häkchen kennzeichnen wie ein Kontrollkästchen. Damit können Sie einen aktuell gültigen Zustand (ein/aus) oder einen Einstellwert kennzeichnen.


Rheinwerk Computing - Zum Seitenanfang

7.1.2 Code des HauptmenüsZur nächsten ÜberschriftZur vorigen Überschrift

Das wichtigste Ereignis eines normalen Menüpunkts ist der Click. Dieser wird mit einer Ereignisprozedur verbunden. Im nachfolgenden Projekt MenüHaupt kann eine Reihe von Abläufen über das Hauptmenü gesteuert werden.

Hauptmenü Bearbeiten:

  • Untermenüpunkt Kopieren: Der Inhalt des Textfelds wird in das Label kopiert.
  • Untermenüpunkt Ende: Das Programm wird beendet.

Hauptmenü Ansicht:

  • Untermenüpunkte Hintergrund (bzw. Schriftart): Es erscheint eine weitere Menüebene. Darin kann die Hintergrundfarbe (bzw. Schriftart) des Labels aus drei Möglichkeiten ausgewählt werden. Die jeweils aktuelle Einstellung ist markiert.
  • Untermenüpunkt Schriftgröße: Der Benutzer hat die Möglichkeit, aus einer ComboBox (Kombinationsfeld) die Schriftgröße auszuwählen bzw. einzugeben.
  • Untermenüpunkte Fett bzw. Kursiv: Der Benutzer hat die Möglichkeit, den Schriftstil Fett und/oder Kursiv auszuwählen. Der gewählte Schriftstil ist anschließend markiert.

Im Folgenden geht es zunächst um die Ereignisprozeduren des Hauptmenüs Bearbeiten (Projekt MenüHaupt):

Public Class Form1
Private Sub mnuKopieren_Click(...) Handles ...
lblA.Text = txtE.Text
If lblA.Text = "" Then lblA.Text = "(leer)"
End Sub

Private Sub mnuEnde_Click(...) Handles ...
Me.Close()
End Sub
[...]
End Class

Listing 7.1 Projekt »MenüHaupt«, Hauptmenü »Bearbeiten«

Zur Erläuterung:

  • Nach dem Kopieren eines leeren Textfelds in das Label wird der Text (leer) eingeblendet, damit man die anderen Einstellungen noch sehen kann.

Die Ereignisprozeduren zur Einstellung der Hintergrundfarbe im Hauptmenü Ansicht (siehe Abbildung 7.5) lauten wie folgt:

Public Class Form1
[...]
Private Sub mnuGelb_Click(...) Handles ...
lblA.BackColor = Color.Yellow
mnuGelb.Checked = True
mnuBlau.Checked = False
mnuRot.Checked = False
End Sub

Private Sub mnuBlau_Click(...) Handles ...
lblA.BackColor = Color.Blue
mnuGelb.Checked = False
mnuBlau.Checked = True
mnuRot.Checked = False
End Sub

Private Sub mnuRot_Click(...) Handles ...
lblA.BackColor = Color.Red
mnuGelb.Checked = False
mnuBlau.Checked = False
mnuRot.Checked = True
End Sub
[...]
End Class

Listing 7.2 Projekt »MenüHaupt«, Farbe einstellen

Zur Erläuterung:

  • Die Hintergrundfarbe wird mithilfe der Struktur Color auf den gewünschten Wert eingestellt.
  • Die Eigenschaft Checked des Untermenüpunkts der ausgewählten Farbe wird auf True gestellt, die jeweils anderen beiden Eigenschaften werden auf False gestellt.
  • Achten Sie darauf, dass die Startwerte der jeweiligen Checked-Eigenschaften auch mit dem Startwert der Hintergrundfarbe übereinstimmen.

Abbildung

Abbildung 7.5 Menü »Ansicht«, Hintergrund


Rheinwerk Computing - Zum Seitenanfang

7.1.3 Klasse FontZur nächsten ÜberschriftZur vorigen Überschrift

Die restlichen Ereignisprozeduren bewirken Änderungen bei Schriftart, Schriftgröße und Schriftstil. Dazu muss zunächst die Klasse Font näher betrachtet werden.

Viele Steuerelemente haben die Eigenschaft Font. Darin werden die Eigenschaften der Schrift im oder auf dem Steuerelement festgelegt. Diese Eigenschaften werden zur Entwicklungszeit im Eigenschaftenfenster eingestellt. Sie können zur Laufzeit des Programms ermittelt bzw. geändert werden.

Zur Änderung wird ein neues Objekt der Klasse Font benötigt. Zur Erzeugung eines solchen Objekts stehen zahlreiche Konstruktoren zur Verfügung. Da in diesem Programm Schriftart, Schriftgröße und Schriftstil verändert werden können, wird der Konstruktor benutzt, der alle drei Eigenschaften verlangt.

Dies mag zunächst verwundern. Es ist aber nicht möglich, nur die Schriftart allein zu ändern, denn die betreffende Untereigenschaft ist nicht änderbar und es gibt auch keinen Konstruktor der Klasse Font, der nur die Schriftart verlangt. Ebenso verhält es sich mit Schriftgröße und Schriftstil.


Rheinwerk Computing - Zum Seitenanfang

7.1.4 SchriftartZur nächsten ÜberschriftZur vorigen Überschrift

Zunächst die Ereignisprozeduren zur Änderung der Schriftart, siehe Abbildung 7.6.

Abbildung

Abbildung 7.6 Menü »Ansicht«, Schriftart

Public Class Form1
[...]
Private Sub mnuCourierNew_Click(...) Handles ...
lblA.Font = New Font("Courier New",
lblA.Font.Size, lblA.Font.Style)
mnuCourierNew.Checked = True
mnuSymbol.Checked = False
mnuArial.Checked = False
End Sub

Private Sub mnuSymbol_Click(...) Handles ...
lblA.Font = New Font("Symbol",
lblA.Font.Size, lblA.Font.Style)
mnuCourierNew.Checked = False
mnuSymbol.Checked = True
mnuArial.Checked = False
End Sub

Private Sub mnuArial_Click(...) Handles ...
lblA.Font = New Font("Arial",
lblA.Font.Size, lblA.Font.Style)
mnuCourierNew.Checked = False
mnuSymbol.Checked = False
mnuArial.Checked = True
End Sub
[...]
End Class

Listing 7.3 Projekt »MenüHaupt«, Schriftart einstellen

Zur Erläuterung:

  • In den Prozeduren wird ein neu erzeugtes Objekt der Klasse Font der Eigenschaft Font des Labels zugewiesen.
  • Der verwendete Konstruktor erhält den Namen der neuen Schriftart und die aktuellen Einstellungen von Schriftgröße und Schriftstil zugewiesen. Diese Werte stehen in den Untereigenschaften Size und Style der Eigenschaft Font zur Verfügung.
  • Die Eigenschaft Checked des Untermenüpunkts der ausgewählten Schrift wird auf True gestellt, die beiden jeweils anderen werden auf False gestellt, wie bei der Hintergrundfarbe.

Rheinwerk Computing - Zum Seitenanfang

7.1.5 SchriftgrößeZur nächsten ÜberschriftZur vorigen Überschrift

Es folgt die Änderung der Schriftgröße über das Kombinationsfeld:

Public Class Form1
Private Sub Form1_Load(...) Handles ...
cboSchriftgröße.Items.Add("8,25")
cboSchriftgröße.Items.Add("10")
cboSchriftgröße.Items.Add("13")
cboSchriftgröße.Items.Add("18")
cboSchriftgröße.SelectedIndex = 0
End Sub
[...]
Private Sub cboSchriftgröße_TextChanged(...
) Handles cboSchriftgröße.TextChanged
Dim schriftgröße As Single

Try
schriftgröße =
Convert.ToDouble(cboSchriftgröße.Text)
Catch ex As Exception
schriftgröße = 8.25
End Try

lblA.Font = New Font(lblA.Font.FontFamily,
schriftgröße, lblA.Font.Style)
End Sub
End Class

Listing 7.4 Projekt »MenüHaupt«, Schriftgröße einstellen

Zur Erläuterung:

  • Zu Beginn des Programms wird das Kombinationsfeld mit einigen Werten gefüllt. Einer der Werte ist der Startwert für die Schriftgröße, dieser sollte auch der markierte Wert in der Liste sein. Die Eigenschaft SelectedIndex muss also voreingestellt werden.
  • Das Ereignis cboSchriftgröße_TextChanged tritt ein, wenn der Benutzer einen Eintrag aus der Liste auswählt oder in das Textfeld einträgt. Bei einem ungültigen Eintrag wird die Standard-Schriftgröße gewählt.
  • Wiederum wird ein neu erzeugtes Objekt der Klasse Font erzeugt und der Eigenschaft Font des Labels zugewiesen.
  • Der verwendete Konstruktor erhält die neue Schriftgröße und die aktuellen Einstellungen von Schriftart und Schriftstil zugewiesen. Diese Werte stehen in den Untereigenschaften FontFamily und Style der Eigenschaft Font zur Verfügung.

Rheinwerk Computing - Zum Seitenanfang

7.1.6 SchriftstilZur vorigen Überschrift

Zuletzt wird die Änderung des Schriftstils vorgenommen:

Public Class Form1
[...]
Private Sub mnuFett_Click(...) Handles ...
lblA.Font = New Font(lblA.Font.FontFamily,
lblA.Font.Size,
lblA.Font.Style Xor FontStyle.Bold)
mnuFett.Checked = Not mnuFett.Checked
End Sub

Private Sub mnuKursiv_Click(...) Handles ...
lblA.Font = New Font(lblA.Font.FontFamily,
lblA.Font.Size,
lblA.Font.Style Xor FontStyle.Italic)
mnuKursiv.Checked = Not mnuKursiv.Checked
End Sub
[...]
End Class

Listing 7.5 Projekt »MenüHaupt«, Schriftstil einstellen

Zur Erläuterung:

  • Das neu erzeugte Objekt der Klasse Font bekommt den neuen Schriftstil und die aktuellen Einstellungen von Schriftart und Schriftgröße zugewiesen.
  • In der Untereigenschaft Font.Style stehen mehrere Möglichkeiten zur Verfügung, die einzeln oder gemeinsam auftreten können: fett, kursiv, unterstrichen, durchgestrichen, normal.
  • Die Untereigenschaft wird intern als eine einzige Bitfolge gespeichert. An dieser Bitfolge kann Visual Basic erkennen, ob eine oder mehrere Möglichkeiten ausgewählt wurden. Zur Einstellung von fett und kursiv würde man die Werte FontStyle.Bold und FontStyle.Italic mit dem Bit-Operator Or (logisches Oder) addieren. Zur Übernahme der bisherigen Werte und der zusätzlichen Einstellung kursiv werden die Werte lblA.Font.Style und FontStyle.Italic mit dem Bit-Operator Xor (logisches Exklusiv-Oder) addiert.
  • Zum Abschluss der Prozedur wird der aktuelle Wert der Eigenschaft Checked mithilfe des Operators Not (logisches Nicht) invertiert, da sich dieser Untermenüpunkt wie ein Schalter verhält: kursiv ein (True) oder kursiv aus (False).


Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Visual Basic 2012






 Visual Basic 2012


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Rheinwerk-Shop: Java ist auch eine Insel






 Java ist auch
 eine Insel


Zum Rheinwerk-Shop: Einstieg in Python






 Einstieg in Python


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern