Galileo Computing < openbook > Galileo 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
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
Stichwort

Download:
- ZIP, ca. 7,8 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Einstieg in Visual Basic 2010 von Thomas Theis
Inkl. Visual Studio Express Editions
Buch: Einstieg in Visual Basic 2010

Einstieg in Visual Basic 2010
2., akt. und erw. Aufl., Klappbroschur, mit DVD
467 S., 24,90 Euro
Galileo Computing
ISBN 978-3-8362-1541-1
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 DataGridView

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

7 Weitere Elemente eines Windows-Programms

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

Font

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


Galileo 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

Galileo Computing - Zum Seitenanfang

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

MenuStrip

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 7.1 Hauptmenü

Untermenü

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 7.2 Hauptmenü, mit Untermenühierarchie

Menü ändern

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,

Combobox

  • eine Combobox (= Kombinationsfeld) zur Auswahl bzw. zum Eintrag, wie z. B. die Schriftgröße in der Symbolleiste in Microsoft Word, oder
  • eine Textbox.

Separator

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.

Zeichen &

Abbildung 7.3 Unterstrichener Buchstabe

Abbildung 7.4 Bedienung per Tastatur

Schalter an/aus

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.


Galileo Computing - Zum Seitenanfang

7.1.2 Code des Hauptmenüs Zur 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.

Checked

  • 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 7.5 Menü »Ansicht«, Hintergrund


Galileo Computing - Zum Seitenanfang

7.1.3 Klasse Font Zur 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.

Konstruktoren

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.


Galileo Computing - Zum Seitenanfang

7.1.4 Schriftart Zur nächsten ÜberschriftZur vorigen Überschrift

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

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:

Font

  • In den Prozeduren wird ein neu erzeugtes Objekt der Klasse Font der Eigenschaft Font des Labels zugewiesen.

Size, Style

  • 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.

Abbildung 7.6 Menü »Ansicht«, Schriftart


Galileo Computing - Zum Seitenanfang

7.1.5 Schriftgröße Zur 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:

SelectedIndex

  • 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.

TextChanged

  • 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.

FontFamily

  • 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.

Galileo Computing - Zum Seitenanfang

7.1.6 Schriftstil topZur 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.

Style

  • In der Untereigenschaft Font.Style stehen mehrere Möglichkeiten zur Verfügung, die einzeln oder gemeinsam auftreten können: fett, kursiv, unterstrichen, durchgestrichen, normal.

Bit-Operatoren

  • 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).


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






<< zurück
  Zum Katalog
Zum Katalog: Einstieg in Visual Basic 2010

Einstieg in Visual Basic 2010
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Visual Basic 2010






 Visual Basic 2010


Zum Katalog: Windows Presentation Foundation






 Windows Presentation
 Foundation


Zum Katalog: Silverlight 4






 Silverlight 4


Zum Katalog: Einstieg in Visual C# 2010






 Einstieg in
 Visual C# 2010


Zum Katalog: Visual C# 2010






 Visual C# 2010


Zum Katalog: Einstieg in PHP 5.3 und MySQL 5.4






 Einstieg in PHP 5.3
 und MySQL 5.4


Zum Katalog: PHP 5.3 und MySQL 5.4






 PHP 5.3 und
 MySQL 5.4


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2010
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.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de