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 4 Erweiterte Grundlagen
Pfeil 4.1 Steuerelemente aktivieren
Pfeil 4.1.1 Ereignis Enter
Pfeil 4.1.2 Eigenschaften Enabled und Visible
Pfeil 4.2 Bedienung per Tastatur
Pfeil 4.2.1 Eigenschaften TabIndex und TabStop
Pfeil 4.2.2 Tastenkombination für Steuerelemente
Pfeil 4.3 Ereignisgesteuerte Programmierung
Pfeil 4.3.1 Eine Ereigniskette
Pfeil 4.3.2 Endlose Ereignisketten
Pfeil 4.3.3 Textfelder koppeln
Pfeil 4.4 Mehrere Formulare
Pfeil 4.4.1 Allgemeine Code-Module
Pfeil 4.5 Datenfelder
Pfeil 4.5.1 Eindimensionale Datenfelder
Pfeil 4.5.2 Ein Feld durchsuchen
Pfeil 4.5.3 Weitere Feld-Operationen
Pfeil 4.5.4 Mehrdimensionale Datenfelder
Pfeil 4.5.5 Datenfelder initialisieren
Pfeil 4.5.6 Datenfelder sind dynamisch
Pfeil 4.5.7 Collections initialisieren
Pfeil 4.5.8 For-Each-Schleife
Pfeil 4.6 Datenstruktur ArrayList
Pfeil 4.7 Benutzerdefinierte Datentypen
Pfeil 4.8 Prozeduren und Funktionen
Pfeil 4.8.1 Prozeduren
Pfeil 4.8.2 Übergabe per Referenz
Pfeil 4.8.3 Funktionen
Pfeil 4.8.4 Optionale Argumente
Pfeil 4.8.5 Beliebig viele Argumente
Pfeil 4.8.6 Datenfelder als Argumente
Pfeil 4.8.7 Rekursiver Aufruf
Pfeil 4.8.8 Übungen zu Prozeduren und Funktionen
Pfeil 4.9 Konsolenanwendung
Pfeil 4.9.1 Anwendung erzeugen
Pfeil 4.9.2 Ein- und Ausgabe von Text
Pfeil 4.9.3 Eingabe einer Zahl
Pfeil 4.9.4 Erfolgreiche Eingabe einer Zahl
Pfeil 4.9.5 Ausgabe formatieren
Pfeil 4.9.6 Aufruf von der Kommandozeile

Rheinwerk Computing - Zum Seitenanfang

4.9 KonsolenanwendungZur nächsten Überschrift

Bisher wurden in diesem Buch ausschließlich Windows-Anwendungen entwickelt, also Programme mit der gewohnten und komfortabel bedienbaren Benutzeroberfläche. Je nach Einsatzzweck kann aber auch eine so genannte Konsolenanwendung genügen, bei der nur einfache Eingaben und Ausgaben in Textform vorkommen. Konsolenanwendungen benötigen wesentlich weniger Programmcode und Speicher.

Den Konsolenanwendungen stehen natürlich auch alle Möglichkeiten der Sprache Visual Basic und des .NET-Frameworks zur Verfügung, so z. B. der Zugriff auf Dateien oder Datenbanken.


Rheinwerk Computing - Zum Seitenanfang

4.9.1 Anwendung erzeugenZur nächsten ÜberschriftZur vorigen Überschrift

Zur Erzeugung einer Konsolenanwendung gehen Sie zunächst wie gewohnt vor, also über das Menü Datei, Menüpunkt Neues Projekt. Im Dialogfeld Neues Projekt wählen Sie allerdings statt der Vorlage Windows Forms-Anwendung die Vorlage Konsolen-Anwendung aus. Tragen Sie im Feld Name einen Projektnamen ein, z. B. KonsoleEinAus.

Im Codefenster erscheint die Datei Module1.vb mit folgendem Code:

Module Module1
Sub Main()
End Sub
End Module

Listing 4.30 Projekt KonsoleEinAus, noch ohne eigenen Code

In diesem Code-Modul Module1 steht die Methode mit dem Namen Main(), mit dem jedes VB-Projekt startet.

Hinweis: Die Methode Main() könnte einen Parameter haben: einen Verweis auf ein Feld von Zeichenketten. Damit ist es möglich, eine Anwendung von der Kommandozeile aus mit Startparametern zu versorgen, siehe Abschnitt 4.9.6.


Rheinwerk Computing - Zum Seitenanfang

4.9.2 Ein- und Ausgabe von TextZur nächsten ÜberschriftZur vorigen Überschrift

Die Methode Main() des Projekts KonsoleEinAus wird jetzt mit eigenem Code gefüllt:

Module Module1
Sub Main()
Dim s As String
Console.Write("Bitte einen Text eingeben: ")
s = Console.ReadLine()
Console.WriteLine("Es wurde der Text " &
s & " eingegeben")
End Sub
End Module

Listing 4.31 Projekt »KonsoleEinAus«, Ein- und Ausgabe

Zur Erläuterung:

  • Im Namensraum System gibt es die Klasse Console zur Ein- und Ausgabe auf einem Textbildschirm.
  • Die statische Methode Write() schreibt einen Text auf den Bildschirm.
  • Die statische Methode ReadLine() führt dazu, dass das Programm anhält und auf eine Eingabe wartet. Nach der Eingabe betätigt der Benutzer die Taste ¢. Die Methode liefert als Rückgabewert die eingegebene Zeichenkette. Diese kann z. B. in einer Variablen vom Datentyp String gespeichert werden.
  • Auch die Methode WriteLine() schreibt einen Text auf den Bildschirm, diesmal gefolgt von einem Zeilenumbruch.

Die Bedienung des Programms:

  • Nach dem Start des Programms, wie gewohnt mit der Taste F5, wird ein Konsolenfenster geöffnet.
  • Nach der Eingabe des Textes ist die anschließende Ausgabe allerdings nur sehr kurz zu sehen, bevor sich das Konsolenfenster wieder von selbst schließt.
  • Es empfiehlt sich daher, dass Sie das Programm mit der Tastenkombination Strg + F5 starten. Dies führt dazu, dass das Programm nach Ablauf auf einen Tastendruck wartet, wie nachfolgend zu sehen:
Bitte einen Text eingeben: Hallo
Es wurde der Text Hallo eingegeben
Drücken Sie eine beliebige Taste . . .

Rheinwerk Computing - Zum Seitenanfang

4.9.3 Eingabe einer ZahlZur nächsten ÜberschriftZur vorigen Überschrift

Zur Verdeutlichung der besonderen Problematik bei der Eingabe von Zahlen wird die Methode Main() des Projekts KonsoleEinAus um weiteren Programmcode ergänzt:

Module Module1
Sub Main()
Dim x As Double
. . .

Try
Console.Write(
"Bitte eine Zahl eingeben: ")
x = Convert.ToDouble(Console.ReadLine())
Console.WriteLine("Es wurde die Zahl " &
x & " eingegeben")
Catch
Console.WriteLine(
"Es wurde keine Zahl eingegeben")
End Try
End Sub
End Module

Listing 4.32 Projekt »KonsoleEinAus«, Eingabe einer Zahl

Zur Erläuterung:

  • Es soll eine Zahl eingegeben werden. Bei der Umwandlung der eingegebenen Zeichenkette in eine Zahl kann eine Ausnahme auftreten, daher wird mit einer Ausnahmebehandlung gearbeitet.
  • Der Rückgabewert der Methode ReadLine() wird mithilfe der Methode ToDouble() der Klasse Convert in eine double-Zahl verwandelt. Falls dies nicht gelingt, erscheint eine entsprechende Fehlermeldung.
  • Falls es sich um eine ganze Zahl handeln soll, muss die Methode ToInt32() statt der Methode ToDouble() genutzt werden.

Nachfolgend die Ausgabe nach einer richtigen Eingabe:

. . .
Bitte eine Zahl eingeben: 2,4
Es wurde die Zahl 2,4 eingegeben
Drücken Sie eine beliebige Taste . . .

Es folgt die Ausgabe nach einer falschen Eingabe:

. . .
Bitte eine Zahl eingeben: 123abc
Es wurde keine Zahl eingegeben
Drücken Sie eine beliebige Taste . . .

Rheinwerk Computing - Zum Seitenanfang

4.9.4 Erfolgreiche Eingabe einer ZahlZur nächsten ÜberschriftZur vorigen Überschrift

Im nachfolgenden Programmteil wird der Benutzer solange aufgefordert, eine ganze Zahl einzugeben, bis dies erfolgreich war. Die Methode Main() des Projekts KonsoleEinAus wird um weiteren Programmcode ergänzt:

Module Module1
Sub Main()
Dim a As Integer
. . .

Console.WriteLine()
Do
Try
Console.Write(
"Bitte eine ganze Zahl eingeben: ")
a = Convert.ToInt32(Console.ReadLine())
Exit Do
Catch
Console.WriteLine(
"Fehler, bitte noch einmal")
End Try
Loop
Console.WriteLine("Es wurde die ganze Zahl " &
a & " eingegeben")
End Sub
End Module

Listing 4.33 Projekt »KonsoleEinAus«, wiederholte Eingabe

Zur Erläuterung:

  • Die Ausnahmebehandlung für die Eingabe einer ganzen Zahl ist zusätzlich in eine endlose Do-Loop-Schleife eingebettet.
  • Falls die Eingabe erfolgreich war, so wird diese Schleife mithilfe von Exit Do verlassen.
  • Falls die Eingabe nicht erfolgreich war, wird ein Fehler gemeldet und es ist eine erneute Eingabe erforderlich.

Nachfolgend die Ausgabe mit zwei falschen und einer richtigen Eingabe:

. . .
Bitte eine ganze Zahl eingeben: 123abc
Fehler, bitte noch einmal
Bitte eine ganze Zahl eingeben: 2,4
Fehler, bitte noch einmal
Bitte eine ganze Zahl eingeben: 5
Es wurde die ganze Zahl 5 eingegeben
Drücken Sie eine beliebige Taste . . .

Hinweis: Sie können eine Konsolenanwendung mit der Tastenkombination Strg + C vorzeitig abbrechen.


Rheinwerk Computing - Zum Seitenanfang

4.9.5 Ausgabe formatierenZur nächsten ÜberschriftZur vorigen Überschrift

Die Ausgabe eines Konsolenprogramms kann formatiert werden. Dies ist vor allem bei der Ausgabe von Tabellen wichtig. Ein Beispiel, im Projekt KonsoleFormat:

Module Module1
Sub Main()
Dim i As Integer
Dim stadt() As String = {"München", "Berlin",
"Bonn", "Bremerhaven", "Ulm"}
For i = 0 To 4
Console.WriteLine(
"{0,-15}{1,9:0.0000}{2,12:#,##0.0}",
stadt(i), i / 7, i * 10000.0 / 7)
Next i
End Sub
End Module

Listing 4.34 Projekt »KonsoleFormat«

Zur Erläuterung:

  • Die überladene Ausgabemethode WriteLine() kann mit einer Formatierungszeichenkette als erstem Parameter aufgerufen werden. Darin steht:
    • die Nummer der Variablen, beginnend mit 0
    • ein Doppelpunkt
    • die zugehörige Formatierung
  • {0,-15}: Als Erstes wird eine Zeichenkette ausgegeben, in der Mindestgesamtbreite 15. Sie erscheint linksbündig, wegen des Minuszeichens vor der 15.
  • {1,9:0.0000}: Es folgt eine Zahl, in der Mindestgesamtbreite 9, gerundet auf vier Nachkommastellen. Sie erscheint rechtsbündig, dies ist der Standard.
  • {2,12:#,##0.0}: Als Letztes folgt wiederum eine Zahl, in der Mindestgesamtbreite 12, gerundet auf eine Nachkommastelle, rechtsbündig. Falls die Zahl mehr als drei Stellen vor dem Komma hat, so wird ein Tausenderpunkt angezeigt.
  • Zur Erinnerung: das Formatierungszeichen 0 steht für eine Ziffer, die auf jeden Fall angezeigt wird, das Formatierungszeichen # steht für eine Ziffer, die nur dann angezeigt wird, falls die Zahl diese Ziffer hat.

Die Ausgabe des Programms:

München           0,0000         0,0
Berlin 0,1429 1.428,6
Bonn 0,2857 2.857,1
Bremerhaven 0,4286 4.285,7
Ulm 0,5714 5.714,3

Rheinwerk Computing - Zum Seitenanfang

4.9.6 Aufruf von der KommandozeileZur vorigen Überschrift

Jede Anwendung lässt sich durch Eingabe des Namens auch von der Kommandozeile aus aufrufen. Besonders bei Konsolen-Anwendungen kommt es vor, dass man dabei die Anwendung mit Startparametern aufruft.

Diese Parameter können dazu dienen, eine Anwendung auf unterschiedliche Arten aufzurufen, ohne dass dazu der Code geändert werden muss. Ein Parameter könnte z. B. der Name einer Datei sein, die geöffnet und gelesen werden soll, falls es bei jedem Aufruf der Anwendung eine andere Datei sein soll.

Die Übernahme der Startparameter in die Anwendung soll mithilfe des Projekts KonsoleStartparameter verdeutlicht werden:

Module Module1
Sub Main(args() As String)
Dim i As Integer
Dim summe As Double = 0

For i = 0 To args.Length – 1
Console.WriteLine(i & ": " & args(i))
Next

For i = 0 To args.Length – 1
Try
summe += Convert.ToDouble(args(i))
Catch
End Try
Next
Console.WriteLine("Summe: " & summe)
End Sub
End Module

Listing 4.35 Projekt »KonsoleStartparameter«

Zur Erläuterung:

  • Die einzelnen Startparameter sind Zeichenketten, sie werden bei einem Aufruf im Datenfeld args gespeichert.
  • Die erste For-Schleife dient zur einfachen Ausgabe der Startparameter.
  • Die zweite For-Schleife soll verdeutlichen, dass die Startparameter auch Zahlen sein können. Sie werden in diesem Falle einfach nur summiert.

Falls Sie diese Anwendung mit der Taste F5 aus der Entwicklungsumgebung heraus aufrufen, so werden keine Startparameter mitgeliefert. Allerdings ist der einmalige Aufruf notwendig, da Ihnen ansonsten keine aufrufbare exe-Datei zur Verfügung steht.

Daher müssen Sie sie von der Kommandozeile aus aufrufen. Unter Windows 7 gehen Sie dazu z. B. wie folgt vor:

  • Rufen Sie im Startmenü den Menüpunkt ZubehörEingabeaufforderung auf.
  • Normalerweise befinden Sie sich dann im Verzeichnis C:\Users\[Benutzername]. Falls nicht, dann geben Sie ein:
  • cd\Users\[Benutzername]
  • Anschließend gehen Sie zu dem Verzeichnis, in dem die exe-Datei der Anwendung steht:
  • cd "Eigene Dateien"/"Visual Studio 2012"/Projects/KonsoleStartparameter/KonsoleStartparameter/bin/Debug

Nun können Sie die Anwendung aufrufen, z. B. mit:

KonsoleStartparameter 3 2,5 hallo 7

Es erscheint die Ausgabe:

0: 3
1: 2,5
2: hallo
3: 7
Summe: 12,5

Die Zeichenkette hallo wurde nur ausgegeben und bei der Summenbildung ignoriert. Sie können anschließend das Kommandozeilenfenster ordnungsgemäß durch die Eingabe von exit schließen.



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