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 Neues in Visual Basic 2008
12 Beispielprojekte
A Installation
B Lösungen der Übungsaufgaben
Stichwort

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

Spacer
 <<   zurück
Einstieg in Visual Basic 2008 von Thomas Theis
Inkl. zahlreicher Beispiele und Uebungen
Buch: Einstieg in Visual Basic 2008

Einstieg in Visual Basic 2008
geb., mit DVD
442 S., 24,90 Euro
Galileo Computing
ISBN 978-3-8362-1192-5
Online bestellenJetzt online bestellen
* versandkostenfrei in (D) und (A)
Pfeil 2 Grundlagen
  Pfeil 2.1 Variablen und Datentypen
    Pfeil 2.1.1 Namen, Werte
    Pfeil 2.1.2 Deklarationen
    Pfeil 2.1.3 Datentypen
    Pfeil 2.1.4 Gültigkeitsbereich
    Pfeil 2.1.5 Konstanten
    Pfeil 2.1.6 Enumerationen
  Pfeil 2.2 Operatoren
    Pfeil 2.2.1 Arithmetische Operatoren
    Pfeil 2.2.2 Vergleichsoperatoren
    Pfeil 2.2.3 Logische Operatoren
    Pfeil 2.2.4 Verkettungsoperator
    Pfeil 2.2.5 Zuweisungsoperatoren
    Pfeil 2.2.6 Rangfolge der Operatoren
  Pfeil 2.3 Panel, Zeitgeber, Textfeld, Zahlenauswahlfeld
    Pfeil 2.3.1 Panel
    Pfeil 2.3.2 Zeitgeber
    Pfeil 2.3.3 Textfelder
    Pfeil 2.3.4 Zahlenauswahlfeld
  Pfeil 2.4 Verzweigungen
    Pfeil 2.4.1 Einzeiliges If…Then…Else
    Pfeil 2.4.2 If…Then…Else-Block
    Pfeil 2.4.3 Select Case
    Pfeil 2.4.4 Funktion IIf
    Pfeil 2.4.5 Funktion Choose
    Pfeil 2.4.6 Übungen
  Pfeil 2.5 Kontrollkästchen, Optionsschaltfläche, Gruppe
    Pfeil 2.5.1 Kontrollkästchen
    Pfeil 2.5.2 Optionsschaltfläche
    Pfeil 2.5.3 Mehrere Ereignisse in einer Prozedur behandeln
    Pfeil 2.5.4 Mehrere Gruppen von Optionsschaltflächen
    Pfeil 2.5.5 Prozedur ohne Ereignis, Modularisierung
  Pfeil 2.6 Schleifen
    Pfeil 2.6.1 For ... Next
    Pfeil 2.6.2 Do ... Loop
    Pfeil 2.6.3 With
    Pfeil 2.6.4 Übungen
  Pfeil 2.7 Listenfeld und Kombinationsfeld
    Pfeil 2.7.1 Listenfeld
    Pfeil 2.7.2 Listenfeld füllen
    Pfeil 2.7.3 Wichtige Eigenschaften
    Pfeil 2.7.4 Wechsel der Auswahl
    Pfeil 2.7.5 Wichtige Methoden
    Pfeil 2.7.6 Mehrfachauswahl
    Pfeil 2.7.7 Kombinationsfelder


Galileo Computing - Zum Seitenanfang

2.3 Panel, Zeitgeber, Textfeld, Zahlenauswahlfeld  Zur nächsten ÜberschriftZur vorigen Überschrift

Windows-Programmierung mit Visual Basic besteht aus zwei Teilen: der Arbeit mit visuellen Steuerelementen und der Programmierung mit der Sprache. Beides soll in diesem Buch parallel vermittelt werden, damit die eher theoretischen Abschnitte zur Programmiersprache durch eine anschauliche Praxis vertieft werden können.

Daher wird in diesem Abschnitt mit vier weiteren Steuerelementen gearbeitet, bevor im nächsten Abschnitt die Verzweigungen zur Programmsteuerung vorgestellt werden.


Galileo Computing - Zum Seitenanfang

2.3.1 Panel  Zur nächsten ÜberschriftZur vorigen Überschrift

Container

Ein Panel dient normalerweise als Container für andere Steuerelemente. In diesem Abschnitt wird es zur visuellen Darstellung eines Rechtecks und für eine kleine Animation genutzt.

Die Eigenschaften BackColor (Hintergrundfarbe), Location (Position) und Size (Größe) sind schon von anderen Steuerelementen bekannt.

Mithilfe des nachfolgenden Programms p0211 wird ein Panel durch Betätigung von vier Buttons um 10 Pixel nach oben, unten, links oder rechts verschoben. Es hat die Größe 100 x 100 Pixel, die Startposition X=100 und Y=100 sowie eine eigene Hintergrundfarbe. Die Bewegung wird mithilfe der Struktur Point durchgeführt.

Abbildung 2.11  Panel, Startzustand

Public Class frm0211 
   Private Sub cmdOben_Click( ... ) Handles ... 
      panMove.Location = New Point(_ 
         panMove.Location.X, _ 
         panMove.Location.Y - 10) 
   End Sub 
 
   Private Sub cmdUnten_Click( ... ) ... 
      panMove.Location = New Point(_ 
         panMove.Location.X, _ 
         panMove.Location.Y + 10) 
   End Sub 
   Private Sub cmdLinks_Click( ... ) Handles ... 
      panMove.Location = New Point(_ 
         panMove.Location.X - 10, _ 
         panMove.Location.Y) 
   End Sub 
 
   Private Sub cmdRechts_Click( ... ) Handles ... 
      panMove.Location = New Point(_ 
         panMove.Location.X + 10, _ 
         panMove.Location.Y) 
   End Sub 
End Class

Abbildung 2.12  Panel nach Verschiebung


Galileo Computing - Zum Seitenanfang

2.3.2 Zeitgeber  Zur nächsten ÜberschriftZur vorigen Überschrift

Timer

Ein Zeitgeber (Timer) erzeugt in festgelegten Abständen Zeittakte. Diese Zeittakte sind Ereignisse, die der Entwickler mit Aktionen verbinden kann. Ein Zeitgeber kann wie jedes andere Steuerelement zum Formular hinzugefügt werden. Da es sich aber um ein nicht sichtbares Steuerelement handelt, wird er unterhalb des Formulars angezeigt. Auch zur Laufzeit ist er nicht sichtbar.

Intervall

Seine wichtigste Eigenschaft ist das Zeitintervall, in dem das Ereignis auftreten soll. Dieses Zeitintervall wird in Millisekunden angegeben.

Enabled

Die Eigenschaft Enabled dient zur Aktivierung bzw. Deaktivierung des Zeitgebers. Sie kann zur Entwicklungszeit oder zur Laufzeit auf True oder False gestellt werden.

Im nachfolgenden Programm p0212 erscheint zunächst ein Formular mit zwei Buttons. Betätigt man den Start-Button, so erscheint ein »x« in einem Bezeichnungsfeld. Alle 0,5 Sekunden erscheint automatisch ein weiteres »x«. Dies wird durch den Timer gesteuert, bei dem der Wert für die Eigenschaft Interval auf 500 gesetzt wurde. Nach Betätigung des Stop-Buttons kommt kein weiteres »x« hinzu.

Abbildung 2.13  Nach einigen Sekunden

Public Class frm0212 
   Private Sub timAnzeige_Tick( ... ) Handles ... 
      lblAnzeige.Text &= "x" 
   End Sub 
 
   Private Sub cmdStart_Click( ... ) Handles ... 
      timAnzeige.Enabled = True 
   End Sub 
 
   Private Sub cmdStop_Click( ... ) Handles ... 
      timAnzeige.Enabled = False 
   End Sub 
End Class

Übung p0213:

Erstellen Sie eine Windows-Anwendung. In der Mitte eines Formulars sollen zu Beginn vier Panels verschiedener Farbe der Größe 20 × 20 Pixel platziert werden. Sobald ein Start-Button betätigt wurde, sollen diese vier Panels sich diagonal in ca. 5–10 Sekunden zu den Ecken des Formulars bewegen, jedes Panel in eine andere Ecke.

Abbildung 2.14  Start-Zustand

Abbildung 2.15  Nach einigen Sekunden

Übung p0214:

Diese Übung gehört nicht zum »Pflichtprogramm«. Sie ist etwas umfangreicher, verdeutlicht aber die Möglichkeiten einer schnellen Visualisierung von Prozessen durch Visual Basic mit wenigen Programmzeilen.

Konstruieren Sie aus mehreren Panels einen Kran (Fundament, senkrechtes Hauptelement, waagrechter Ausleger, senkrechter Haken am Ausleger). Der Benutzer soll die Möglichkeit haben, über Buttons die folgenden Aktionen auszulösen:

  • Haken um 10 Pixel ausfahren
  • Haken um 10 Pixel einfahren
  • Ausleger um 10 Pixel ausfahren
  • Ausleger um 10 Pixel einfahren
  • Kran um 10 Pixel nach rechts fahren
  • Kran um 10 Pixel nach links fahren
  • Kran um 10 Pixel in der Höhe ausfahren
  • Kran um 10 Pixel in der Höhe einfahren

Denken Sie daran, dass bei vielen Bewegungen mehrere Steuerelemente bewegt werden müssen, da der Kran sonst seinen »Zusammenhalt« verliert. Manche Aktionen resultieren nur aus Größenveränderungen (Eigenschaften Width und Height), manche nur aus Ortsveränderungen, manche aus beidem.

Abbildung 2.16  Start-Zustand

Abbildung 2.17  Nach einigen Aktionen


Galileo Computing - Zum Seitenanfang

2.3.3 Textfelder  Zur nächsten ÜberschriftZur vorigen Überschrift

Eingabefeld

Ein Textfeld dient in erster Linie dazu, die Eingabe von Text oder Zahlen vom Benutzer entgegenzunehmen. Diese Eingaben werden in der Eigenschaft Text des Textfelds gespeichert. Das Aussehen und das Verhalten eines Textfelds werden unter anderem durch folgende Eigenschaften gekennzeichnet:

  • MultiLine: Steht MultiLine auf True, so kann bei der Eingabe und bei der Anzeige mit mehreren Textzeilen gearbeitet werden.
  • ScrollBars: Man kann ein Textfeld mit vertikalen und/oder horizontalen Bildlaufleisten zur Eingabe und Anzeige längerer Texte versehen.
  • MaxLength: Mit dieser Eigenschaft lässt sich die Anzahl der Zeichen des Textfelds beschränken. Ist keine Beschränkung vorgesehen, kann das Textfeld 32K Zeichen aufnehmen.

    Passwort

  • PasswordChar: Falls für diese Eigenschaft im Entwurfsmodus ein Platzhalter-Zeichen eingegeben wurde, wird während der Laufzeit für jedes eingegebene Zeichen nur dieser Platzhalter angezeigt. Diese Eigenschaft wird vor allem bei Passwort-Abfragen verwendet.

Im nachfolgenden Programm p0215 kann der Benutzer in einem Textfeld einen Text eingeben. Nach Betätigung des Buttons Ausgabe wird der eingegebene Text in einem zusammenhängenden Satz ausgegeben.

Abbildung 2.18  Eingabe in Textfeld

Der Code lautet wie folgt:

Public Class frm0215 
   Private Sub cmdAusgabe_Click( ... ) Handles ... 
      lblAusgabe.Text = "Sie haben '" _ 
         & txtEingabe.Text & "' eingegeben" 
   End Sub 
End Class

Zur Erläuterung:

  • In der Eigenschaft Text des Textfelds wird die Eingabe gespeichert. Die Eigenschaft wird in einen längeren Ausgabetext eingebettet.

Zahlen eingeben

Bei der Eingabe und Auswertung von Zahlen sind einige Besonderheiten zu beachten. Im nachfolgenden Programm, ebenfalls in Projekt p0215, kann der Benutzer in einem Textfeld eine Zahl eingeben. Nach Betätigung des Buttons Rechnen 1 wird der Wert dieser Zahl verdoppelt, das Ergebnis wird in einem Label darunter ausgegeben.

Public Class frm0215 
[ ... ] 
   Private Sub cmdRechnen1_Click( ... ) Handles ... 
      lblAusgabe.Text = txtEingabe.Text * 2 
   End Sub 
End Class

Zur Erläuterung:

  • Wenn eine Zeichenkette eingegeben wurde, die eine Zahl darstellt, dann wird sie implizit, d. h. automatisch, in eine Zahl umgewandelt, mit der dann gerechnet werden kann.
  • Stellt die eingegebene Zeichenkette keine Zahl dar, kommt es zu einem Laufzeitfehler. Diese Situation sollte natürlich vermieden werden:
  • Man kann vorher überprüfen, ob es sich bei der Zeichenkette um eine gültige Zahl handelt und entsprechend reagieren. Dies wird möglich, sobald man Verzweigungen zur Programmsteuerung beherrscht.

    Ausnahmebehandlung

  • Allgemein kann man Programme so schreiben, dass ein Programmabbruch abgefangen werden kann. Dies wird möglich, sobald man die Ausnahmebehandlung (siehe hierzu Kapitel 3, »Fehlerbehandlung«) beherrscht.

Einige Beispiele:

Abbildung 2.19 zeigt die Eingabe einer Zahl mit Nachkommastellen.

Abbildung 2.19  Eingabe einer Zahl mit Nachkommastellen

Die Eingabe einer Zeichenkette, z. B. »abc«, führt zu einer Ausnahme. Die Zeile, in der der Fehler auftritt, wird im Code markiert, damit der Fehler beseitigt werden kann (siehe Abbildung 2.20).

Abbildung 2.20  Markierung der Fehlerzeile nach Eingabe des Textes »abc«

Die Eingabe einer Zahl, bei der ein Punkt statt einem Komma zur Abtrennung von Nachkommastellen eingegeben wird, führt zu einem ganz anderen Rechenergebnis:

Abbildung 2.21  Eine Zahl mit einem Punkt vor den Nachkommastellen

Der Punkt wird ignoriert, die Zahl wird als 352 angesehen und führt so zu dem Ergebnis 704.

Val()

Eine Verbesserung, gleichzeitig aber eine Umstellung ergibt sich, wenn man die Funktion Val() verwendet. Die Eingabe einer Zeichenkette (z. B. »abc«) führt nicht mehr zu einer Ausnahme, da die Funktion Val() aus einer Zeichenkette den Wert 0 ermittelt. Mit 0 kann gerechnet werden.

Allerdings sollten die Zahlen nun in englischer Schreibweise eingegeben werden, also mit einem Punkt vor den Nachkommastellen.

Abbildung 2.22  Funktion Val()

Public Class frm0215 
[ ... ] 
   Private Sub cmdRechnen2_Click( ... ) Handles ... 
      lblAusgabe.Text = Val(txtEingabe.Text) * 2 
   End Sub 
End Class

Zur Erläuterung:

  • Der eingegebene Text wird mit der Funktion Val() in eine Zahl umgewandelt. Falls keine Zahl eingegeben wurde, ergibt sich als Wert 0.

Galileo Computing - Zum Seitenanfang

2.3.4 Zahlenauswahlfeld  topZur vorigen Überschrift

NumericUpDown

Das Steuerelement Zahlenauswahlfeld (NumericUpDown) bietet eine andere Möglichkeit, Werte an ein Programm zu übermitteln. Die Werte können innerhalb selbst definierter Grenzen und in selbst definierten Schritten über zwei kleine Pfeiltasten ausgewählt werden.

Wichtige Eigenschaften des Steuerelements sind:

    Value

  • Value: Bezeichnet zur Entwicklungszeit den Startwert und zur Laufzeit den vom Benutzer aktuell eingestellten Wert.
  • Maximum, Minimum: Bestimmt den größtmöglichen Wert und den kleinstmöglichen Wert der Eigenschaft Value. Es handelt sich also um die Werte, die durch die Auswahl mit den Pfeiltasten ganz oben und ganz unten erreicht werden können.
  • Increment: Mit Increment wird die Schrittweite eingestellt, mit der sich der Wert (Eigenschaft Value) ändert, wenn der Benutzer eine der kleinen Pfeiltasten betätigt.
  • DecimalPlaces: Bestimmt die Anzahl der Nachkommastellen in der Anzeige des Zahlenauswahlfelds.

ValueChanged

Das wichtigste Ereignis dieses Steuerelements ist ValueChanged. Es tritt bei der Veränderung der Eigenschaft Value ein und sollte anschließend zur Programmsteuerung verwendet werden.

Im nachfolgenden Programm p0216 werden alle diese Eigenschaften und das genannte Ereignis genutzt. Der Benutzer kann Zahlenwerte zwischen -5,0 und +5,0 in Schritten von 0,1 über ein Zahlenauswahlfeld einstellen. Der ausgewählte Wert wird unmittelbar in einem Label angezeigt.

Abbildung 2.23  Zahlenauswahlfeld

Die Eigenschaften wurden zur Entwicklungszeit wie folgt eingestellt:

  • Value: Wert 2, die Anwendung startet bei dem Wert 2,0 für das Zahlenauswahlfeld
  • Maximum, Minimum: Wert -5 und +5
  • Increment: Wert 0,1
  • DecimalPlaces: Wert 1, zur Anzeige einer einzelnen Nachkommastelle

Der Code lautet:

Public Class frm0216 
   Private Sub numEingabe_ValueChanged( ... ) Handles ... 
      lblAusgabe.Text = numEingabe.Value 
   End Sub 
End Class


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 2008






Einstieg in Visual Basic 2008
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Visual Basic 2008






 Visual Basic 2008


Zum Katalog: Einstieg in Visual C++ 2008






 Einstieg in
 Visual C++ 2008


Zum Katalog: Einstieg in Visual C# 2008






 Einstieg in
 Visual C# 2008


Zum Katalog: Visual C# 2008






 Visual C# 2008


Zum Katalog: Visual C# - Video-Training






 Visual C# -
 Video-Training


Zum Katalog: Einstieg in PHP 5 und MySQL 5






 Einstieg in PHP 5
 und MySQL 5


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





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