Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
1 Einführung
17
1.1 Aufbau dieses Buchs
17
1.2 Visual Studio 2017
17
1.3 Mein erstes Windows-Programm
18
1.4 Visual-Basic-Entwicklungsumgebung
19
1.4.1 Ein neues Projekt
19
1.4.2 Einfügen von Steuerelementen
21
1.4.3 Arbeiten mit dem Eigenschaften-Fenster
22
1.4.4 Speichern eines Projekts
24
1.4.5 Das Codefenster
25
1.4.6 Schreiben von Programmcode
26
1.4.7 Kommentare
28
1.4.8 Starten, Ausführen und Beenden des Programms
29
1.4.9 Ausführbares Programm
29
1.4.10 Projekt schließen, Projekt öffnen
30
1.4.11 Übung
30
1.4.12 Regeln für Zeilenumbrüche
31
1.5 Arbeiten mit Steuerelementen
31
1.5.1 Steuerelemente formatieren
31
1.5.2 Steuerelemente kopieren
33
1.5.3 Eigenschaften zur Laufzeit ändern
34
1.5.4 Vergabe und Verwendung von Namen
36
1.5.5 Verknüpfung von Texten, mehrzeilige Texte
36
1.5.6 Eigenschaft BackColor, Farben allgemein
37
2 Grundlagen
39
2.1 Variablen und Datentypen
39
2.1.1 Namen und Werte
39
2.1.2 Deklarationen
40
2.1.3 Datentypen
40
2.1.4 Gültigkeitsbereich
43
2.1.5 Konstanten
46
2.1.6 Enumerationen
48
2.2 Operatoren
49
2.2.1 Rechenoperatoren
50
2.2.2 Vergleichsoperatoren
52
2.2.3 Logische Operatoren
53
2.2.4 Verkettungsoperator
54
2.2.5 Zuweisungsoperatoren
55
2.2.6 Rangfolge der Operatoren
55
2.3 Einfache Steuerelemente
57
2.3.1 Panel
57
2.3.2 Zeitgeber
58
2.3.3 Textfelder
62
2.3.4 Zahlenauswahlfeld
65
2.4 Verzweigungen
66
2.4.1 Einzeiliges If ... Then ... Else
67
2.4.2 If...Then...Else-Block
69
2.4.3 Select Case
70
2.4.4 Funktion IIf
72
2.4.5 Funktion Choose
72
2.4.6 Übungen
73
2.5 Verzweigungen und Steuerelemente
73
2.5.1 Kontrollkästchen
74
2.5.2 Optionsschaltfläche
76
2.5.3 Mehrere Ereignisse in einer Prozedur behandeln
79
2.5.4 Mehrere Gruppen von Optionsschaltflächen
80
2.5.5 Prozedur ohne Ereignis, Modularisierung
83
2.5.6 Schieberegler
84
2.6 Schleifen
86
2.6.1 For ... Next
86
2.6.2 Do ... Loop
89
2.6.3 Ein Würfel
93
2.6.4 With
94
2.6.5 Übungen
94
2.7 Schleifen und Steuerelemente
97
2.7.1 Listenfeld
97
2.7.2 Listenfeld füllen
97
2.7.3 Wichtige Eigenschaften
98
2.7.4 For Each … In …
100
2.7.5 Wechsel der Auswahl
101
2.7.6 Wichtige Methoden
102
2.7.7 Mehrfachauswahl
105
2.7.8 Kombinationsfelder
106
3 Fehlerbehandlung
111
3.1 Entwicklung eines Programms
111
3.2 Fehlerarten
112
3.3 Syntaxfehler und IntelliSense
113
3.4 Laufzeitfehler und Exception Handling
115
3.4.1 Programm mit Laufzeitfehlern
115
3.4.2 Einfaches Exception Handling
117
3.4.3 Erweitertes Exception Handling
119
3.5 Logische Fehler und Debugging
120
3.5.1 Haltepunkte und Einzelschrittverfahren
120
3.5.2 Überwachungsfenster
121
4 Erweiterte Grundlagen
123
4.1 Steuerelemente aktivieren
123
4.1.1 Ereignis Enter
123
4.1.2 Eigenschaften Enabled und Visible
126
4.2 Bedienung per Tastatur
129
4.2.1 Eigenschaften TabIndex und TabStop
129
4.2.2 Tastenkombination für Steuerelemente
130
4.3 Ereignisgesteuerte Programmierung
131
4.3.1 Eine Ereigniskette
131
4.3.2 Endlose Ereignisketten
132
4.3.3 Textfelder koppeln
134
4.3.4 Tastatur und Maus
135
4.4 Mehrere Formulare
138
4.4.1 Allgemeine Code-Module
142
4.5 Datenfelder
144
4.5.1 Eindimensionale Datenfelder
144
4.5.2 Ein Feld durchsuchen
146
4.5.3 Weitere Feld-Operationen
147
4.5.4 Mehrdimensionale Datenfelder
149
4.5.5 Datenfelder initialisieren
153
4.5.6 Datenfelder sind dynamisch
154
4.6 Benutzerdefinierte Datentypen
157
4.7 Prozeduren und Funktionen
160
4.7.1 Prozeduren
161
4.7.2 Übergabe per Referenz
163
4.7.3 Funktionen
166
4.7.4 Optionale Argumente
168
4.7.5 Beliebig viele Argumente
170
4.7.6 Datenfelder als Argumente
172
4.7.7 Rekursiver Aufruf
174
4.7.8 Übungen zu Prozeduren und Funktionen
176
4.8 Konsolenanwendung
176
4.8.1 Anwendung erzeugen
177
4.8.2 Ein- und Ausgabe von Text
177
4.8.3 Eingabe einer Zahl
178
4.8.4 Erfolgreiche Eingabe einer Zahl
180
4.8.5 Ausgabe formatieren
181
4.8.6 Aufruf von der Kommandozeile
182
5 Objektorientierte Programmierung
185
5.1 Was ist Objektorientierung?
185
5.2 Klasse, Eigenschaft, Methode, Objekt
186
5.2.1 Objektverweis und Instanz
189
5.3 Eigenschaftsmethode
190
5.4 Konstruktor
193
5.5 Namensräume
196
5.6 Referenzen, Vergleiche und Typen
197
5.6.1 Referenzen
197
5.6.2 Operator Is
199
5.6.3 Objekte vergleichen
200
5.6.4 Typ eines Objekts ermitteln
201
5.6.5 Typ eines Objekts durch Vergleich ermitteln
202
5.7 Delegates
203
5.8 Statische Elemente
205
5.9 Vererbung
208
5.10 Konstruktoren bei Vererbung
212
5.11 Polymorphie
215
5.12 Schnittstellen
219
5.13 Generische Typen
222
5.13.1 Eine Liste von Zeichenketten
223
5.13.2 Eine Liste von Objekten
226
5.13.3 Ein Dictionary von Objekten
230
5.14 Eigene Klassenbibliotheken
234
5.14.1 DLL erstellen
234
5.14.2 DLL nutzen
236
6 Wichtige Klassen in .NET
237
6.1 Klasse String für Zeichenketten
237
6.1.1 Eigenschaften der Klasse String
238
6.1.2 Trimmen
240
6.1.3 Splitten
241
6.1.4 Suchen
243
6.1.5 Einfügen
245
6.1.6 Löschen
247
6.1.7 Teilzeichenkette ermitteln
249
6.1.8 Zeichen ersetzen
250
6.1.9 Ausgabe formatieren
251
6.2 Datum und Uhrzeit
253
6.2.1 Eigenschaften von DateTime
253
6.2.2 Rechnen mit Datum und Uhrzeit
256
6.2.3 DateTimePicker
258
6.3 Dateien und Verzeichnisse
261
6.3.1 Lesen aus einer Textdatei
262
6.3.2 Schreiben in eine Textdatei
264
6.3.3 Sicheres Lesen aus einer Textdatei
265
6.3.4 Sicheres Schreiben in eine Textdatei
268
6.3.5 Datei mit wahlfreiem Zugriff
269
6.3.6 Die Klassen File und Directory
276
6.3.7 Das aktuelle Verzeichnis
277
6.3.8 Eine Liste der Dateien
278
6.3.9 Eine Liste der Dateien und Verzeichnisse
279
6.3.10 Informationen über Dateien und Verzeichnisse
280
6.3.11 Bewegen in der Verzeichnishierarchie
281
6.4 XML-Dateien
283
6.4.1 Aufbau von XML-Dateien
283
6.4.2 Schreiben in eine XML-Datei
284
6.4.3 Lesen aus einer XML-Datei
286
6.4.4 Schreiben von Objekten
288
6.4.5 Lesen von Objekten
289
6.5 Rechnen mit der Klasse Math
291
7 Weitere Elemente eines Windows-Programms
299
7.1 Hauptmenü
299
7.1.1 Erstellung des Hauptmenüs
299
7.1.2 Code des Hauptmenüs
301
7.1.3 Klasse Font
304
7.1.4 Schriftart
304
7.1.5 Schriftgröße
306
7.1.6 Schriftstil
307
7.2 Kontextmenü
308
7.2.1 Erstellung des Kontextmenüs
308
7.2.2 Code des Kontextmenüs
309
7.3 Symbolleiste
310
7.3.1 Erstellung der Symbolleiste
311
7.3.2 Code der Symbolleiste
312
7.4 Statusleiste
314
7.4.1 Erstellung der Statusleiste
314
7.4.2 Code der Statusleiste
315
7.5 Eingabe-Dialogfeld
316
7.6 Ausgabe-Dialogfeld
319
7.6.1 Dialogfeld mit OK-Button
320
7.6.2 Dialogfeld mit Info-Zeichen
321
7.6.3 Dialogfeld mit Buttons für Ja und Nein
321
7.6.4 Dialogfeld mit Buttons für Ja, Nein und Abbrechen
323
7.6.5 Dialogfeld mit Buttons für Wiederholen und Abbrechen
324
7.6.6 Dialogfeld mit Buttons für Abbrechen, Wiederholen und Ignorieren
325
7.7 Standarddialogfelder
326
7.7.1 Datei öffnen
326
7.7.2 Datei speichern unter
329
7.7.3 Verzeichnis auswählen
330
7.7.4 Farbe auswählen
332
7.7.5 Schrifteigenschaften auswählen
333
7.8 Steuerelement ListView
334
7.9 Steuerelement Chart
338
7.10 Steuerelement DataGridView
342
7.11 Lokalisierung
347
8 Datenbankanwendungen mit ADO.NET
353
8.1 Was sind relationale Datenbanken?
353
8.1.1 Beispiel »Lager«
354
8.1.2 Indizes
357
8.1.3 Relationen
358
8.1.4 Übungen
362
8.2 Anlegen einer Datenbank in MS Access
363
8.2.1 Aufbau von MS Access
364
8.2.2 Datenbankentwurf in MS Access 2016
365
8.2.3 Übungen
370
8.3 Datenbankzugriff mit Visual Basic
370
8.3.1 Beispiel-Datenbank
371
8.3.2 Ablauf eines Zugriffs
372
8.3.3 Verbindung
372
8.3.4 SQL-Befehl
372
8.3.5 OleDb
373
8.3.6 Auswahlabfrage
373
8.3.7 Aktionsabfrage
376
8.4 SQL-Befehle
378
8.4.1 Auswahl mit »SELECT«
378
8.4.2 Ändern mit »UPDATE«
382
8.4.3 Löschen mit »DELETE«
383
8.4.4 Einfügen mit »INSERT«
383
8.4.5 Typische Fehler in SQL
384
8.5 Ein Verwaltungsprogramm
385
8.5.1 Initialisierung
386
8.5.2 Alle Datensätze sehen
387
8.5.3 Datensatz einfügen
389
8.5.4 Datensatz ändern
391
8.5.5 Datensatz löschen
394
8.5.6 Datensatz suchen
395
8.6 Abfragen über mehrere Tabellen
397
8.6.1 Datenbankmodell und Tabellen
397
8.6.2 Alle Personen
399
8.6.3 Anzahl der Kunden
399
8.6.4 Alle Kunden mit allen Projekten
400
8.6.5 Alle Personen mit allen Projektzeiten
401
8.6.6 Alle Personen mit Zeitsumme
401
8.6.7 Alle Projekte mit allen Personenzeiten
402
8.6.8 Alle Projekte mit Zeitsumme
403
8.6.9 JOIN oder WHERE
403
8.7 Verbindung zu MySQL
404
8.7.1 .NET-Treiber
404
9 Internetanwendungen mit ASP.NET
407
9.1 Grundlagen von Internetanwendungen
407
9.1.1 Statische Internetanwendungen
407
9.1.2 Dynamische Internetanwendungen
408
9.1.3 Vorteile von ASP.NET
409
9.2 Ein lokaler Webserver
409
9.2.1 Eine erste Internetanwendung
409
9.3 Eine erste ASP.NET-Anwendung
411
9.3.1 Fehlerhafte Programmierung
414
9.4 Formatierung von Internetseiten
415
9.5 Senden und Auswerten von Formulardaten
416
9.6 Weitere Formularelemente
419
9.7 Ein Kalenderelement
422
9.8 ASP.NET und ADO.NET
424
9.9 Datenbank im Internet ändern
427
10 Zeichnen mit GDI+
433
10.1 Grundlagen von GDI+
433
10.2 Linie, Rechteck, Polygon und Ellipse zeichnen
433
10.2.1 Grundeinstellungen
434
10.2.2 Linie
435
10.2.3 Rechteck
436
10.2.4 Polygon
436
10.2.5 Ellipse
437
10.2.6 Dicke und Farbe ändern, Zeichnung löschen
438
10.3 Text schreiben
438
10.4 Bilder darstellen
441
10.5 Dauerhaft zeichnen
443
10.6 Zeichnen einer Funktion
444
11 Beispielprojekte
447
11.1 Spielprogramm Tetris
447
11.1.1 Spielablauf
447
11.1.2 Programmbeschreibung
448
11.1.3 Steuerelemente
449
11.1.4 Initialisierung des Programms
450
11.1.5 Erzeugen eines neuen Panels
452
11.1.6 Der Zeitgeber
453
11.1.7 Panel löschen
454
11.1.8 Panel seitlich bewegen
457
11.1.9 Panel nach unten bewegen
458
11.1.10 Pause
459
11.2 Lernprogramm Vokabeln
459
11.2.1 Benutzung des Programms
459
11.2.2 Erweiterung des Programms
461
11.2.3 Initialisierung des Programms
462
11.2.4 Ein Test beginnt
463
11.2.5 Zwei Hilfsprozeduren
465
11.2.6 Die Antwort prüfen
466
11.2.7 Das Benutzermenü
467
12 Windows Presentation Foundation
471
12.1 Layout
472
12.2 Steuerelemente
475
12.3 Frame-Anwendung
478
12.4 Zweidimensionale Grafik
481
12.5 Dreidimensionale Grafik
484
12.6 Animation
488
12.7 WPF und Windows Forms
491
A Installation und technische Hinweise
495
A.1 Installation von Visual Studio Community 2017
495
A.2 Arbeiten mit einer Projektvorlage
497
A.3 Weitergabe eigener Windows-Programme
498
A.4 Konfigurationsdaten
499
B Lösungen der Übungsaufgaben
503
B.1 Lösung der Übungsaufgabe aus Kapitel 1
503
B.2 Lösungen der Übungsaufgaben aus Kapitel 2
503
B.3 Lösungen der Übungsaufgaben aus Kapitel 4
517
B.4 Lösungen der Übungsaufgaben aus Kapitel 8
520
Index
523