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 der Sprachsyntax
3 Klassendesign
4 Weitere Datentypen
5 Multithreading
6 Collections und LINQ
7 Eingabe und Ausgabe
8 Anwendungen: Struktur und Installation
9 Code erstellen und debuggen
10 Einige Basisklassen
11 Windows-Anwendungen erstellen
12 Die wichtigsten Steuerelemente
13 Tastatur- und Mausereignisse
14 MDI-Anwendungen
15 Grafiken mit GDI+
16 Drucken
17 Entwickeln von Steuerelementen
18 Programmiertechniken
19 WPF – Grundlagen
20 Layoutcontainer
21 WPF-Steuerelemente
22 Konzepte von WPF
23 Datenbankverbindung mit ADO.NET
24 Datenbankabfragen mit ADO.NET
25 DataAdapter
26 Offline mit DataSet
27 Datenbanken aktualisieren
28 Stark typisierte DataSets
A Anhang: Einige Übersichten
Stichwort

Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Visual Basic 2008 von Andreas Kuehnel, Stephan Leibbrandt
Das umfassende Handbuch
Buch: Visual Basic 2008

Visual Basic 2008
3., aktualisierte und erweiterte Auflage, geb., mit DVD
1.323 S., 49,90 Euro
Rheinwerk Computing
ISBN 978-3-8362-1171-0
Pfeil 11 Windows-Anwendungen erstellen
Pfeil 11.1 Entwicklungsumgebung
Pfeil 11.2 Eine erste Windows-Anwendung
Pfeil 11.3 Das Codegerüst einer Windows-Anwendung
Pfeil 11.3.1 Einstellungen
Pfeil 11.3.2 Automatisch generierter Startcode
Pfeil 11.3.3 Nachrichtenschleife
Pfeil 11.3.4 Dateien *.vb und *.Designer.vb
Pfeil 11.4 Ereignisse grafischer Windows-Komponenten
Pfeil 11.4.1 Syntax und Nomenklatur
Pfeil 11.4.2 Ereignisse mit Ereignisdaten
Pfeil 11.4.3 Ereignisbehandlung in Visual Studio
Pfeil 11.4.4 Ereignisbehandlung mit OnEreignis-Methoden
Pfeil 11.5 Die Basisklassen einer Form
Pfeil 11.5.1 Control
Pfeil 11.5.2 ScrollableControl
Pfeil 11.5.3 ContainerControl
Pfeil 11.6 Eigenschaften einer Form
Pfeil 11.6.1 Rahmendarstellung
Pfeil 11.6.2 Formspezifisches Symbol
Pfeil 11.6.3 Schaltflächen der Titelleiste
Pfeil 11.6.4 Transparenz
Pfeil 11.6.5 Immer obenauf
Pfeil 11.6.6 Mauszeiger verändern
Pfeil 11.6.7 Farbe (Color)
Pfeil 11.6.8 Schriftart (Font)
Pfeil 11.6.9 Abmessungen einer Form
Pfeil 11.6.10 Position eines Fensters
Pfeil 11.6.11 Anzeigezustand eines Fensters
Pfeil 11.6.12 Arbeitsfläche des Fensters (Clientbereich)
Pfeil 11.6.13 Fokussierreihenfolge
Pfeil 11.6.14 Standardschaltflächen eines Fensters
Pfeil 11.6.15 Unterelemente (ControlsCollection)
Pfeil 11.6.16 Eigenschaften des Form-Objekts
Pfeil 11.7 Ereignisse einer Form
Pfeil 11.7.1 Erzeugen eines Fensters
Pfeil 11.7.2 Größenänderung einer Form
Pfeil 11.7.3 Schließen eines Fensters
Pfeil 11.8 Anwendungen mit mehreren Fenstern
Pfeil 11.8.1 Neue Formulare hinzufügen
Pfeil 11.8.2 Lebenszyklus von Formularen
Pfeil 11.8.3 Mehrere Fenster verwalten
Pfeil 11.8.4 Begrüßungsfenster (Splash)
Pfeil 11.9 Modale Dialogfenster
Pfeil 11.9.1 Layout eines Dialogfensters
Pfeil 11.9.2 Rückgabewert
Pfeil 11.9.3 Eine Form modal öffnen
Pfeil 11.10 Meldungsfenster mit MessageBox
Pfeil 11.10.1 Anzeige mit Show
Pfeil 11.10.2 Rückgabewert der Meldungsfenster
Pfeil 11.11 Die Klasse Application
Pfeil 11.11.1 Die Datei AssemblyInfo.vb
Pfeil 11.11.2 Wartende Ereignisse abrufen (DoEvents)
Pfeil 11.11.3 Eigenschaften und Methoden


Galileo Computing - Zum Seitenanfang

11.10 Meldungsfenster mit MessageBox Zur nächsten ÜberschriftZur vorigen Überschrift

Sicherlich sind Ihnen modale Dialoge wie der aus Abbildung 11.12 bekannt.

Abbildung 11.12 Typisches modales Dialogfenster

Weil modale Dialogfenster sehr häufig zur einfachen Interaktion mit dem Anwender oder auch nur zur Bereitstellung von Information in Applikationen eingesetzt werden, ist im Namensraum System.Windows.Forms eine Klasse vordefiniert, mit der die meisten Anforderungen erfüllt werden können. Es handelt sich um MessageBox. Der abgebildete Dialog beruht auf der folgenden Anweisung:

MessageBox.Show("Wollen Sie die Anwendung beenden?", "Anwendungsmeldung", _ 
  MessageBoxButtons.YesNo, MessageBoxIcon.Question, _ 
  MessageBoxDefaultButton.Button2);

Der Code beschreibt sich nahezu von selbst: Im ersten Argument wird der Meldungstext übergeben, im zweiten die Beschriftung der Titelleiste, im dritten die anzuzeigenden Schaltflächen. Das vierte Argument beschreibt das Symbol im Clientbereich des Meldungsfensters, und das letzte Argument gibt vor, welche Schaltfläche nach dem Start der Anzeige fokussiert werden soll.

Der Programmcode, den man benötigt, um ein Meldungsfenster anzuzeigen, ist bedeutend kürzer und einfacher als der eines benutzerdefinierten Dialogs. Dennoch sind modalen Dialogen, die auf der Klasse MessageBox basieren, Grenzen gesetzt, denn der Anwender wird nur mit Hinweisen und Informationen versorgt, auf die er durch das Anklicken einer Schaltfläche reagiert, um damit den weiteren Programmablauf zu beeinflussen.


Galileo Computing - Zum Seitenanfang

11.10.1 Anzeige mit Show Zur nächsten ÜberschriftZur vorigen Überschrift

MessageBox verfügt nur über eine typspezifische Methode: Es ist die 21-fach überladene statische Methode Show. Die einfachste ist die, die nur die Zeichenfolge des Meldungstextes entgegennimmt:

MessageBox.Show("Visual C# macht Spass");

Ein solches Meldungsfenster verfügt nur über eine OK-Schaltfläche. Klickt der Anwender auf diese, wird das Meldungsfenster geschlossen.

Optisch wirkt eine leere Titelleiste stümperhaft. Meist werden Sie daher dieser auch eine Zeichenfolge übergeben wollen. Üblicherweise verwendet man dazu den Namen der Anwendung, den man auch aus der statischen Eigenschaft ProductName der Klasse Application beziehen kann:

MessageBox.Show("Visual C# macht Spass", Application.ProductName);

In einem dritten Argument können Sie die im Meldungsfenster angezeigten Schaltflächen festlegen. Dazu übergeben Sie eine der Enumeration MessageBoxButtons vordefinierten Konstanten:


Tabelle 11.14 Konstanten der Enumeration »MessageBoxButtons«

Konstante Das Meldungsfenster enthält die Schaltfläche(n)

AbortRetryIgnore

Beenden, Wiederholen und Ignorieren.

OK

OK.

OKCancel

OK und Abbrechen.

RetryCancel

Wiederholen und Abbrechen.

YesNo

Ja und Nein.

YesNoCancel

Ja, Nein und Abbrechen.


Wollen Sie im linken Bereich des Meldungsfensters ein Symbol anzeigen lassen, haben Sie tatsächlich nur vier verschiedene Alternativen, obwohl in der Liste der MessageBoxIcon-Aufzählung neun aufgeführt sind:


Tabelle 11.15 Konstanten der Enumeration »MessageBoxIcon«

Konstante(n) Das Symbol im Meldungsfenster ist

None

nicht vorhanden

Hand, Stop, Error

ein weißes X in einem Kreis mit rotem Hintergrund

Question

ein Fragezeichen in einem Kreis

Exclamation, Warning

ein Ausrufezeichen in einem Dreieck mit gelbem Hintergrund

Asterisk, Information

der Kleinbuchstabe »i« in einem Kreis


Wenn Sie ein Meldungsfenster mit mehreren Schaltflächen erzeugen, kommt der Wahl der vorfokussierten Schaltfläche eine besondere Bedeutung zu. Nehmen wir beispielsweise das folgende Meldungsfenster:

MessageBox.Show("Wollen Sie die Anwendung beenden?", _ 
  Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Question)

Standardmäßig ist die linke Schaltfläche (OK) fokussiert und reagiert nicht nur auf einen Mausklick, sondern auch auf die Eingabe- und Leertaste. Es wäre fatal, wenn in einem Formular viele Einträge gemacht worden sind, der Anwender versehentlich auf die Schliessen-Schaltfläche der Form klickt und dann in seiner Hektik danach noch zu schnell auf die Taste Enter -Taste drückt – seine Arbeit wäre verloren. Sie als Entwickler sollten diese Situation vermeiden. Dazu fokussieren Sie einfach die Schaltfläche im Meldungsfenster, die nicht das Schließen der Form oder gar der Anwendung zur Folge hat. Der auf die Festlegung des Icons folgende Parameter der Show-Methode vom Typ MessageBoxDefaultButton legt die vorausgewählte Schaltfläche fest:


Tabelle 11.16 Konstanten der Enumeration »MessageBoxDefaultButton«

Konstante Vorfokussierte Schaltfläche im Meldungsfenster ist die

Button1

erste Schaltfläche

Button2

zweite Schaltfläche von links

Button3

rechte Schaltfläche


Weitere optionale Parameter ermöglichen über die aufgeführten Fähigkeiten hinaus die Anzeige einer Hilfe-Schaltfläche und die Verknüpfung zu einer passenden Hilfedatei.


Galileo Computing - Zum Seitenanfang

11.10.2 Rückgabewert der Meldungsfenster topZur vorigen Überschrift

Wenn das Meldungsfenster nur einen OK-Button zeigt, erübrigt sich die Auswertung dieser Schaltfläche. Werden jedoch mehrere Schaltflächen angeboten, müssen Sie auswerten, welche der Anwender angeklickt hat. Die Information, welche Schaltfläche des Meldungsfensters zum Schließen geführt hat, bezieht man über den Rückgabewert der Methode MessageBox.Show, der vom Typ DialogResult ist. Die Mitglieder dieser Enumeration sind schon in Tabelle 11.13 vorgestellt worden.

Im folgenden Ereignishandler einer Schaltfläche wird ein Meldungsfenster angezeigt, das den Anwender um Bestätigung bittet, ob er die Anwendung schließen möchte oder nicht. Der Code reagiert in Abhängigkeit von der im Meldungsfenster gewählten Schaltfläche.

Private Sub btnSchliessen_Click(sender As Object, e As EventArgs e) 
  Dim strMeldung As String = "Wollen Sie die Anwendung beenden?" 
  Dim result As DialogResult = MessageBox.Show( _ 
    strMeldung, Application.ProductName, _ 
    MessageBoxButtons.OKCancel, MessageBoxIcon.Question, _ 
    MessageBoxDefaultButton.Button2);

  If result = DialogResult.OK Then 
    Application.Exit(); 
  Else 
 
    ' Reaktion auf 'Abbrechen', falls notwendig 
  End If 
End Sub

Die Abbrechen-Schaltfläche wird vorfokussiert, um ein versehentliches Schließen der Anwendung zu vermeiden. In einer If-Anweisung wird der Rückgabewert überprüft. Hat der Anwender auf OK geklickt, wird die Anwendung unweigerlich geschlossen, ansonsten kann eine andere Reaktion erfolgen. In den meisten Fällen ist bei der Rückgabe DialogResult.Cancel kein Code erforderlich.

Alternativ könnte der gesamte If-Block auch durch Select-Case ersetzt werden:

Select result 
  Case DialogResult.OK: 
    Application.Exit() 
  Case DialogResult.Cancel: 
    ' Reaktion auf 'Abbrechen', falls notwendig 
End Select


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück
  Zum Katalog
Zum Katalog: Visual Basic 2008
Visual Basic 2008
Jetzt bestellen


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

 Buchempfehlungen
Zum Katalog: Visual Basic 2012






 Visual Basic 2012


Zum Katalog: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: Professionell entwickeln mit Visual C# 2012






 Professionell
 entwickeln mit
 Visual C# 2012


Zum Katalog: Windows Presentation Foundation






 Windows Presentation
 Foundation


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2009
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