37
DVG3 - 16VisualBasic 1 Visual Basic Visual Basic Vortrag in DVG 3 Vortrag in DVG 3 Hans Zais Hans Zais Matr. Nr. 680200 Matr. Nr. 680200

Visual Basic

  • Upload
    linore

  • View
    23

  • Download
    0

Embed Size (px)

DESCRIPTION

Visual Basic. Vortrag in DVG 3 Hans Zais Matr. Nr. 680200. Kapitel 01 Einführung. Visual Basic ist eine Windows-Programmiersprache von Microsoft entwickelt visuelle Entwicklungsumgebung ist objektorientierter als eine rein prozedurale Sprache (C, Pascal) - PowerPoint PPT Presentation

Citation preview

Page 1: Visual Basic

DVG3 - 16VisualBasic 1

Visual BasicVisual Basic

Vortrag in DVG 3Vortrag in DVG 3

Hans ZaisHans Zais

Matr. Nr. 680200Matr. Nr. 680200

Page 2: Visual Basic

DVG3 - 16VisualBasic 2

Kapitel 01Kapitel 01EinführungEinführung

Visual Basic ist eine Windows-ProgrammierspracheVisual Basic ist eine Windows-Programmiersprache von Microsoft entwickeltvon Microsoft entwickelt visuelle Entwicklungsumgebungvisuelle Entwicklungsumgebung ist objektorientierter als eine rein prozedurale Sprache ist objektorientierter als eine rein prozedurale Sprache

(C, Pascal)(C, Pascal) gegenüber einer echt objektorientierten Sprache (C++, gegenüber einer echt objektorientierten Sprache (C++,

Java) fehlen aber einige Sprachelemente (Vererbung Java) fehlen aber einige Sprachelemente (Vererbung von Eigenschaften)von Eigenschaften)

mit jeder neuen Version kommen aber ein paar mit jeder neuen Version kommen aber ein paar objektorientierte Merkmale hinzu.objektorientierte Merkmale hinzu.

Page 3: Visual Basic

DVG3 - 16VisualBasic 3

Kapitel 02 Kapitel 02 VB - ProjekteVB - Projekte

VB kann zur Programmierung unterschiedlicher VB kann zur Programmierung unterschiedlicher Programmarten verwendet werden:Programmarten verwendet werden:

Standard-EXEStandard-EXE ActiveX-EXEActiveX-EXE ActiveX-DLLActiveX-DLL ActiveX-SteuerelementActiveX-Steuerelement Add-InAdd-In ActiveX-Dokument-DLLActiveX-Dokument-DLL ActiveX-Document-EXEActiveX-Document-EXE

Page 4: Visual Basic

DVG3 - 16VisualBasic 4

Kapitel 02Kapitel 02 VB - Projekte VB - Projekte

Standard-EXE:Standard-EXE: EXE - executable ( = ausführbar)EXE - executable ( = ausführbar) herkömmliche Visual Basic Anwendungherkömmliche Visual Basic Anwendung fast alle Software-Anwendungen entsprechen einer fast alle Software-Anwendungen entsprechen einer

Standard-EXEStandard-EXE eigenständige Anwendungeigenständige Anwendung keine Verbindung zu anderen Anwendungenkeine Verbindung zu anderen Anwendungen

ActiveX-SteuerelementeActiveX-Steuerelemente zum Erstellen eigener Steuerelementezum Erstellen eigener Steuerelemente

Page 5: Visual Basic

DVG3 - 16VisualBasic 5

Kapitel 02Kapitel 02VB - ProjekteVB - Projekte

ActiveX-EXEActiveX-EXE Software-Anwendungen, die von anderen Programmen Software-Anwendungen, die von anderen Programmen

via OLE oder COM über eine objektorientierte via OLE oder COM über eine objektorientierte Programmschnittstelle genutzt werden können.Programmschnittstelle genutzt werden können.

sind als eigenständige Programme lauffähigsind als eigenständige Programme lauffähig

ActiveX-DLLActiveX-DLL DLL - Dynamic Link LibraryDLL - Dynamic Link Library stellen nur Funktionen zur Verfügung, die von anderen stellen nur Funktionen zur Verfügung, die von anderen

Programmen genutzt werden könnenProgrammen genutzt werden können fast alle Windows-Funktionen sind in DLLs hinterlegtfast alle Windows-Funktionen sind in DLLs hinterlegt

Page 6: Visual Basic

DVG3 - 16VisualBasic 6

Kapitel 02Kapitel 02VB - ProjekteVB - Projekte

ActiveX-Dokument-DLLActiveX-Dokument-DLL können im Internet-Browser als Web Seite dargestellt können im Internet-Browser als Web Seite dargestellt

werdenwerden Komponente oder Funktionsbibliothek einer AnwendungKomponente oder Funktionsbibliothek einer Anwendung keine eigenständige Anwendungkeine eigenständige Anwendung Word 97 enthält zum Beispiel diese FunktionalitätWord 97 enthält zum Beispiel diese Funktionalität

ActiveX-Dokument-EXEActiveX-Dokument-EXE läßt sich als Webseite darstellenläßt sich als Webseite darstellen ist eigenständige Anwendungist eigenständige Anwendung

Page 7: Visual Basic

DVG3 - 16VisualBasic 7

Kapitel 03Kapitel 03VB - EntwicklungsumgebungVB - Entwicklungsumgebung

Die Toolbox Die Toolbox stellt alle verfügbaren Steuerelemente darstellt alle verfügbaren Steuerelemente dar

Das Formfenster Das Formfenster bildet die Grundlage der Benutzeroberflächebildet die Grundlage der Benutzeroberfläche bildet den graphischen Hintergrund des Programmsbildet den graphischen Hintergrund des Programms

Page 8: Visual Basic

DVG3 - 16VisualBasic 8

Kapitel 03Kapitel 03VB - EntwicklungsumgebungVB - Entwicklungsumgebung

Das ProjektfensterDas Projektfenster listet alle Formen, Module und Klassen eines Projektes listet alle Formen, Module und Klassen eines Projektes

aufauf jede Form, jedes Modul und jede Klasse wird in einer jede Form, jedes Modul und jede Klasse wird in einer

separaten Datei gespeichertseparaten Datei gespeichert

Das CodefensterDas Codefenster dient der Anzeige und Erfassung des Programmcodesdient der Anzeige und Erfassung des Programmcodes

Das EigenschaftenfensterDas Eigenschaftenfenster zur Anzeige und Veränderung von Steuerelementenzur Anzeige und Veränderung von Steuerelementen

Page 9: Visual Basic

DVG3 - 16VisualBasic 9

Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen

DatentypenDatentypen Byte: ganze Zahl zwischen 0 und 255; Speicherplatz: 1 Byte: ganze Zahl zwischen 0 und 255; Speicherplatz: 1

ByteByte Integer: ganze Zahl zwischen -32 768 und +32 767; Integer: ganze Zahl zwischen -32 768 und +32 767;

Speicherplatz: 2 ByteSpeicherplatz: 2 Byte Long: ganze Zahl zwischen -2 147 483 648 und +2 147 Long: ganze Zahl zwischen -2 147 483 648 und +2 147

483 647 Speicherplatz: 4 Byte483 647 Speicherplatz: 4 Byte Single: Fließkommazahl mit 8 Stellen Genauigkeit; Single: Fließkommazahl mit 8 Stellen Genauigkeit;

Speicherplatz: 4 ByteSpeicherplatz: 4 Byte Double: Fließkommazahl mit 16 Stellen Genauigkeit; Double: Fließkommazahl mit 16 Stellen Genauigkeit;

Speicherplatz: 8 ByteSpeicherplatz: 8 Byte Currency: Festkommazahl mit 15 Stellen vor und 4 Stellen Currency: Festkommazahl mit 15 Stellen vor und 4 Stellen

nach dem Komma; Speicherplatz: 8 Bytenach dem Komma; Speicherplatz: 8 Byte

Page 10: Visual Basic

DVG3 - 16VisualBasic 10

Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen

DatentypenDatentypen String: Zeichenketten, also alphanumerische Zeichen String: Zeichenketten, also alphanumerische Zeichen

und Sonderzeichen; können beliebig lang seinund Sonderzeichen; können beliebig lang sein Object: speichert einen Verweis auf ein Objekt; Object: speichert einen Verweis auf ein Objekt;

Speicherplatz: 4 ByteSpeicherplatz: 4 Byte Variant: Default-Variablentyp, d.h. falls einer Variable Variant: Default-Variablentyp, d.h. falls einer Variable

kein Datentyp zugewiesen wird, wird ihr der Typ Variant kein Datentyp zugewiesen wird, wird ihr der Typ Variant zugewiesen. Nachteile: zugewiesen. Nachteile:

großer Speicherplatz (mindestens 16 Byte, bei Strings großer Speicherplatz (mindestens 16 Byte, bei Strings 22 Byte + 2 Byte pro Zeichen), 22 Byte + 2 Byte pro Zeichen),

langsame Bearbeitungsgeschwindugkeit langsame Bearbeitungsgeschwindugkeit

Page 11: Visual Basic

DVG3 - 16VisualBasic 11

Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen

Date: Datum und Uhrzeit, wobei der Wertebereich beim Date: Datum und Uhrzeit, wobei der Wertebereich beim Datum zwischen dem 01.01.100 und dem 31.12.9999 Datum zwischen dem 01.01.100 und dem 31.12.9999 liegt, der Bereich der Zeit liegt zwischen 0 und 23.59.59; liegt, der Bereich der Zeit liegt zwischen 0 und 23.59.59; Speicherplatz: 8 ByteSpeicherplatz: 8 Byte

Eigene DatentypenEigene Datentypen benutzerdefinierte Variabletypen: Dieser Variablentyp ist benutzerdefinierte Variabletypen: Dieser Variablentyp ist

kein echter Datentyp, sondern die Zusammensetzung kein echter Datentyp, sondern die Zusammensetzung mehrerer Variablen eines Typs:mehrerer Variablen eines Typs:

Beispiel: Variablentyp TFHStudentBeispiel: Variablentyp TFHStudent Type TFHStudentType TFHStudent Dim name As StringDim name As String Dim vorname, matrNr As StringDim vorname, matrNr As String End Type End Type

Zugriff: Zugriff: TFHStudent.name = "Bolle"TFHStudent.name = "Bolle"

Page 12: Visual Basic

DVG3 - 16VisualBasic 12

Kapitel 04Kapitel 04Programmierung - DatentypenProgrammierung - Datentypen

Vor jeder Variablendeklaration muss das Schlüsselwort Vor jeder Variablendeklaration muss das Schlüsselwort Dim Dim stehenstehen

Variablennamen müssen mit einem Buchstaben Variablennamen müssen mit einem Buchstaben beginnen, dürfen keine Sonderzeichen enthalten und beginnen, dürfen keine Sonderzeichen enthalten und maximal 255 Zeichen lang sein.maximal 255 Zeichen lang sein.

Groß- und Kleinschreibung werden in VB grundsätzlich Groß- und Kleinschreibung werden in VB grundsätzlich nicht unterschieden.nicht unterschieden.

Page 13: Visual Basic

DVG3 - 16VisualBasic 13

Kapitel 04Kapitel 04Programmierung - FelderProgrammierung - Felder

Statische FelderStatische Felder bestehen aus Variablen gleichen Typs und einer festen Längebestehen aus Variablen gleichen Typs und einer festen Länge Beispiele:Beispiele:

Dim feld(20) As IntegerDim feld(20) As Integer

liefert ein Feld von Integers mit der Länge 21 mit den liefert ein Feld von Integers mit der Länge 21 mit den Feldelementem Feldelementem

feld(0), feld(1), ..., feld(20)feld(0), feld(1), ..., feld(20)

Dim feld(-5 To 7) As IntegerDim feld(-5 To 7) As Integer liefert ein Feld mit den 13 Feldelementenliefert ein Feld mit den 13 Feldelementen feld(-5), feld(-4),... , feld(7) feld(-5), feld(-4),... , feld(7)

Page 14: Visual Basic

DVG3 - 16VisualBasic 14

Kapitel 04Kapitel 04Programmierung - FelderProgrammierung - Felder

Dynamische FelderDynamische Felder besteht aus Variablen gleichen Typs, deren Länge besteht aus Variablen gleichen Typs, deren Länge

dynamisch im Programmablauf bestimmt und verändert dynamisch im Programmablauf bestimmt und verändert werden können.werden können.

Beispiel:Beispiel:

Dim feld() As IntegerDim feld() As Integer

liefert ein Feld von Integers mit unbestimmter Länge. liefert ein Feld von Integers mit unbestimmter Länge. Die Größe des Feldes kann im Programm dann durch Die Größe des Feldes kann im Programm dann durch

ReDim feld(N) ReDim feld(N) auf N+1 verändert werden. auf N+1 verändert werden.

Page 15: Visual Basic

DVG3 - 16VisualBasic 15

Kapitel 04Kapitel 04Programmierung - KonstantenProgrammierung - Konstanten

KonstantenKonstanten Beispiel: Beispiel: Const pi = 3.14Const pi = 3.14

Gültigkeitsbereich von Variablen und Konstanten:Gültigkeitsbereich von Variablen und Konstanten: Unterscheidung in globale und lokaleUnterscheidung in globale und lokale globale Variablen werden mit dem Schlüsselwort globale Variablen werden mit dem Schlüsselwort GlobalGlobal

initiiertinitiiert Globale Variablen sind innerhalb des gesamten Globale Variablen sind innerhalb des gesamten

Programms gültig, lokale nur in der Funktion in der sie Programms gültig, lokale nur in der Funktion in der sie definiert sind. definiert sind.

Page 16: Visual Basic

DVG3 - 16VisualBasic 16

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Funktionen und ProzedurenFunktionen und Prozeduren ohne Rückgabewert:ohne Rückgabewert: DefinitionDefinition Sub name_der_funktion()Sub name_der_funktion() ...... End SubEnd Sub

Page 17: Visual Basic

DVG3 - 16VisualBasic 17

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

mit Rückgabewert:mit Rückgabewert: DefinitionDefinition Function name_der_funktion(x As Integer) As DoubleFunction name_der_funktion(x As Integer) As Double ...... End FunctionEnd Function

Der Rückgabewert muß innerhalb der Funktion durch Der Rückgabewert muß innerhalb der Funktion durch eine Zuweisung dem Namen der Funktion zugewiesen eine Zuweisung dem Namen der Funktion zugewiesen werdenwerden

an die Funktion übergebener Parameter: Integer xan die Funktion übergebener Parameter: Integer x Rückgabewert: Rückgabewert: name_der_funktionname_der_funktion vom Typ Double vom Typ Double

Page 18: Visual Basic

DVG3 - 16VisualBasic 18

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Prozedurnamen dürfen außer dem Unterstrich keine Prozedurnamen dürfen außer dem Unterstrich keine Sonderzeichen enthaltenSonderzeichen enthalten

Aufruf von Funktionen:Aufruf von Funktionen: name_der_funktion Para1,...,ParaNname_der_funktion Para1,...,ParaN

Die Datentypen von Para1,...,ParaN müssen identisch Die Datentypen von Para1,...,ParaN müssen identisch mit den Paramertypen der aufgerufenen Funktion seinmit den Paramertypen der aufgerufenen Funktion sein

Page 19: Visual Basic

DVG3 - 16VisualBasic 19

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Aufruf von Funktionen:Aufruf von Funktionen: Es gibt zwei Arten, Funktionen mit Parametern Es gibt zwei Arten, Funktionen mit Parametern

aufzurufen:aufzurufen: call by value:call by value: Wird für einen Parameter in einer Funktion die Wird für einen Parameter in einer Funktion die

Übergabeart call by value gewählt, dann wird beim Übergabeart call by value gewählt, dann wird beim Prozeduraufruf der Wert des Parameters übergeben und Prozeduraufruf der Wert des Parameters übergeben und nicht dessen Adresse. Wird der Parameter in der nicht dessen Adresse. Wird der Parameter in der aufgerufenen Prozedur geändert, so hat dies keine aufgerufenen Prozedur geändert, so hat dies keine Auswirkung auf den übergebenen Parameter. Auswirkung auf den übergebenen Parameter.

Page 20: Visual Basic

DVG3 - 16VisualBasic 20

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Beispiel: call by valueBeispiel: call by value

Sub eins(ByVal a)Sub eins(ByVal a) a=a+10a=a+10 End SubEnd Sub

Sub zwei()Sub zwei() b=10b=10 eins beins b c= bc= b End SubEnd Sub

Der Parameter c hat hier den Wert 10.Der Parameter c hat hier den Wert 10.

Page 21: Visual Basic

DVG3 - 16VisualBasic 21

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

call by reference:call by reference: Wird für einen Parameter die Übergabeart call by Wird für einen Parameter die Übergabeart call by

reference gewählt, dann wird beim Prozeduraufruf die reference gewählt, dann wird beim Prozeduraufruf die Adresse des Parameters übergeben.Adresse des Parameters übergeben.

Wird der Parameter also in der aufgerufenen Prozedur Wird der Parameter also in der aufgerufenen Prozedur geändert, hat das Auswirkungen auf den Wert des geändert, hat das Auswirkungen auf den Wert des Parameters in der aufrufenden Prozedur.Parameters in der aufrufenden Prozedur.

Es ist nicht möglich, beim Aufruf als Parameter direkt Es ist nicht möglich, beim Aufruf als Parameter direkt eine Zahl oder Zeichenkette zu verwenden, da diese eine Zahl oder Zeichenkette zu verwenden, da diese nicht von der Prozedur verändert werden kann.nicht von der Prozedur verändert werden kann.

Page 22: Visual Basic

DVG3 - 16VisualBasic 22

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Beispiel: call by referenceBeispiel: call by reference

Sub eins(a)Sub eins(a) Dim a=a+10Dim a=a+10 End SubEnd Sub

Sub zwei()Sub zwei() Dim b=10Dim b=10 eins beins b Dim c= bDim c= b End SubEnd Sub

Der Parameter c hat hier den Wert 20. Der Parameter c hat hier den Wert 20.

Page 23: Visual Basic

DVG3 - 16VisualBasic 23

Kapitel 04Kapitel 04Programmierung - ProzedurenProgrammierung - Prozeduren

Es gibt vordefinierte Prozeduren, wieEs gibt vordefinierte Prozeduren, wie MsgBox “Text “ MsgBox “Text “ zeigt eine Textbox auf dem Bildschirm anzeigt eine Textbox auf dem Bildschirm an InputBoxInputBox

funktioniert wie funktioniert wie MsgBoxMsgBox nur wird hierbei die Eingabe nur wird hierbei die Eingabe einer Zeichenkette ermöglicht.einer Zeichenkette ermöglicht.

Page 24: Visual Basic

DVG3 - 16VisualBasic 24

Kapitel 04Kapitel 04Programmierung - VerzweigungenProgrammierung - Verzweigungen

If - Then -ElseIf - Then -Else If bedingung ThenIf bedingung Then ...... ElseIf bedingung1 ThenElseIf bedingung1 Then ...... ElseIf bedingungN Then ElseIf bedingungN Then ...... ElseElse ...... End IfEnd If

Dabei werden die ElseIf - Blöcke und die Else - Blöcke Dabei werden die ElseIf - Blöcke und die Else - Blöcke nur ausgeführt, wenn keine der darüber liegenden nur ausgeführt, wenn keine der darüber liegenden Bedingungen erfüllt ist.Bedingungen erfüllt ist.

Page 25: Visual Basic

DVG3 - 16VisualBasic 25

Kapitel 04Kapitel 04Programmierung - VerzweigungenProgrammierung - Verzweigungen

Select - CaseSelect - Case Select Case ausdruckSelect Case ausdruck Case möglichkeit1Case möglichkeit1 ...... Case möglichkeitNCase möglichkeitN ...... Case ElseCase Else ...... End Select End Select

Page 26: Visual Basic

DVG3 - 16VisualBasic 26

Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen

For-Next-SchleifenFor-Next-Schleifen var1, var2var1, var2 For var1= start To ende [Step schrittweite]For var1= start To ende [Step schrittweite] ...... If ... Then Exit ForIf ... Then Exit For ...... Next var2Next var2

In jedem Durchgang wird die Variable um die In jedem Durchgang wird die Variable um die Schrittweite erhöhtSchrittweite erhöht

Ist keine Schrittweite angegeben, wird die Variable Ist keine Schrittweite angegeben, wird die Variable jeweils um 1 erhöht.jeweils um 1 erhöht.

Als Schleifenvariable wird nach Durchlauf einer Als Schleifenvariable wird nach Durchlauf einer Variablen automatisch die nächste eingesetzt. Variablen automatisch die nächste eingesetzt.

Page 27: Visual Basic

DVG3 - 16VisualBasic 27

Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen

While - Wend - SchleifeWhile - Wend - Schleife While bedingungWhile bedingung ...... WendWend

Wird so lange ausgeführt, bis die Bedingung erfüllt istWird so lange ausgeführt, bis die Bedingung erfüllt ist

Page 28: Visual Basic

DVG3 - 16VisualBasic 28

Kapitel 04Kapitel 04Programmierung - SchleifenProgrammierung - Schleifen

Do - Loop - SchleifenDo - Loop - Schleifen Do [ While bedingung oder Until bedingung]Do [ While bedingung oder Until bedingung] ...... If ... Then Exit DoIf ... Then Exit Do ...... LoopLoop

oderoder

DoDo ...... If ... Then Exit DoIf ... Then Exit Do ...... Loop [ While bedingung oder Until bedingung]Loop [ While bedingung oder Until bedingung]

Steht in einer Do - Loop - Schleife keine While- oder Steht in einer Do - Loop - Schleife keine While- oder Untilbedingung, dann ist sie eine Endlosschleife.Untilbedingung, dann ist sie eine Endlosschleife.

Page 29: Visual Basic

DVG3 - 16VisualBasic 29

Kapitel 04Kapitel 04Programmierung - ObjekteProgrammierung - Objekte

Als Objekte gelten Formulare, Steuerelemente und Als Objekte gelten Formulare, Steuerelemente und einige Windows-Elemente ( Drucker, einige Windows-Elemente ( Drucker, Zwischenablage, ...)Zwischenablage, ...)

Objekte enthalten Eigenschaften und MethodenObjekte enthalten Eigenschaften und Methoden Eigenschaften bestimmen die Merkmale eines Objekts Eigenschaften bestimmen die Merkmale eines Objekts

( Farbe eines Formulars, Größe eines Buttons, ...).( Farbe eines Formulars, Größe eines Buttons, ...). Methoden führen Anweisungen aus.Methoden führen Anweisungen aus. Aufruf von Eigenschaften und Methoden:Aufruf von Eigenschaften und Methoden: objekt.eigenschaftobjekt.eigenschaft objekt.methodeobjekt.methode

Page 30: Visual Basic

DVG3 - 16VisualBasic 30

Kapitel 04Kapitel 04Programmierung - ObjekteProgrammierung - Objekte

Greift man nacheinander auf unterschiedliche Greift man nacheinander auf unterschiedliche Eigenschaften oder Methoden eines Objekts zu, kann Eigenschaften oder Methoden eines Objekts zu, kann man dies mit man dies mit With With vereinfachen:vereinfachen:

With objektWith objekt .methode1.methode1 ...... .methodeN.methodeN .eigenschaft1.eigenschaft1 ...... .eigenschaftM.eigenschaftM End With End With

Page 31: Visual Basic

DVG3 - 16VisualBasic 31

Kapitel 06Kapitel 06InternetInternet

Bei der ersten Version von HTML konnten nur statische Bei der ersten Version von HTML konnten nur statische Daten angezeigt werden.Daten angezeigt werden.

Es entstand der Wunsch, dynamisch auf Eingeben des Es entstand der Wunsch, dynamisch auf Eingeben des Anwenders reagieren zu können.Anwenders reagieren zu können.

Beispiel:Beispiel: Der Anwender gibt einen Suchbegriff ein.Der Anwender gibt einen Suchbegriff ein. Server leitet mittels CGI ( Common Gateway Interface) Server leitet mittels CGI ( Common Gateway Interface)

diese Information weiter an ein Programm zur diese Information weiter an ein Programm zur AuswertungAuswertung

Dieses Programm liefert eine neue HTML-Seite, die als Dieses Programm liefert eine neue HTML-Seite, die als Antwort an den Client übertragen wird.Antwort an den Client übertragen wird.

Page 32: Visual Basic

DVG3 - 16VisualBasic 32

Kapitel 06Kapitel 06InternetInternet

Dynamischer Datenaustausch ist Grundlage aller Dynamischer Datenaustausch ist Grundlage aller Geschäftstransaktionen und jedes Datenbankzugriffs Geschäftstransaktionen und jedes Datenbankzugriffs über das Internet.über das Internet.

Darum wurde HTML mit Formular-Merkmalen erweitert, Darum wurde HTML mit Formular-Merkmalen erweitert, die es ermöglichen, einfache Dialoge zu gestalten und die es ermöglichen, einfache Dialoge zu gestalten und Informationen zurück an den Internet-Server zu senden.Informationen zurück an den Internet-Server zu senden.

Dort werden diese Informationen ausgewertet und auf Dort werden diese Informationen ausgewertet und auf einer neuen HTML-Seite zurück an den Server einer neuen HTML-Seite zurück an den Server übertragen.übertragen.

Page 33: Visual Basic

DVG3 - 16VisualBasic 33

Kapitel 06Kapitel 06InternetInternet

Nachteile:Nachteile: Datenaustausch über das Internet ist langsam. Oft Datenaustausch über das Internet ist langsam. Oft

könnten Daten gleich beim Anwender ausgewertet könnten Daten gleich beim Anwender ausgewertet werden und stünden damit gleich zur Verfügung.werden und stünden damit gleich zur Verfügung.

Der Server kann nicht unbegrenzt viele CGI-Programme Der Server kann nicht unbegrenzt viele CGI-Programme gleichzeitig starten. Konsequenz: noch längere gleichzeitig starten. Konsequenz: noch längere Wartezeiten.Wartezeiten.

Page 34: Visual Basic

DVG3 - 16VisualBasic 34

Kapitel 06Kapitel 06InternetInternet

Lösungsansätze für diese Probleme:Lösungsansätze für diese Probleme: Verlagerung von möglichst viel Funktionen zum Client Verlagerung von möglichst viel Funktionen zum Client

zu verlagern, d. h. in Programme, die lokal am Rechner zu verlagern, d. h. in Programme, die lokal am Rechner des Anwenders ausgeführt werden ( Java, JavaScript, des Anwenders ausgeführt werden ( Java, JavaScript, VBScript, DHTML-Anwendungen,... )VBScript, DHTML-Anwendungen,... )

Ersetzen von CGI-Skripten durch effizientere Ersetzen von CGI-Skripten durch effizientere Programme. Microsoft bietet dazu den Internet Programme. Microsoft bietet dazu den Internet Information Server, das Internet Server Application Information Server, das Internet Server Application Interface, und andere an.Interface, und andere an.

Page 35: Visual Basic

DVG3 - 16VisualBasic 35

Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript

Sehr starke Ähnlichkeit zu Visual BasicSehr starke Ähnlichkeit zu Visual Basic Einige Unterschiede zu VB:Einige Unterschiede zu VB: With-Kommando existiert nichtWith-Kommando existiert nicht nur Variablentyp Variantnur Variablentyp Variant VB-Script Programme sind spürbar langsamer als VB-VB-Script Programme sind spürbar langsamer als VB-

ProgrammeProgramme

In den meisten öffentlich zugänglichen Internet-In den meisten öffentlich zugänglichen Internet-Dokumenten wird JavaScript benutzt, weil die Browser Dokumenten wird JavaScript benutzt, weil die Browser von Netscape nicht in der Lage sind, VBScript-Code von Netscape nicht in der Lage sind, VBScript-Code auszuführen.auszuführen.

Page 36: Visual Basic

DVG3 - 16VisualBasic 36

Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript

VBScript-Code muss zwischen <SCRIPT>-Tags VBScript-Code muss zwischen <SCRIPT>-Tags eingeschlossen sein.eingeschlossen sein.

Innerhalb einer HTML-Datei sind mehrere <SCRIPT>-Innerhalb einer HTML-Datei sind mehrere <SCRIPT>-Abschnitte zulässig.Abschnitte zulässig.

Variable innerhalb eines <SCRIPT>-Abschnitts sind nur Variable innerhalb eines <SCRIPT>-Abschnitts sind nur dort bekannt, ein <SCRIPT>-Abschnitt wird wie ein dort bekannt, ein <SCRIPT>-Abschnitt wird wie ein eigenes Modul behandelt.eigenes Modul behandelt.

Page 37: Visual Basic

DVG3 - 16VisualBasic 37

Kapitel 06Kapitel 06Internet - VBScriptInternet - VBScript

Beispiel: Hello World!Beispiel: Hello World! <HTML><HTML> <HEAD> <TITLE> Hello World als VBScript </TITLE> </HEAD><HEAD> <TITLE> Hello World als VBScript </TITLE> </HEAD> <BODY><BODY> <H3> Hello World in VBScript </H3><H3> Hello World in VBScript </H3> <INPUT TYPE=“Button“ NAME=“MyButton“ VALUE=“Click Me“ ><INPUT TYPE=“Button“ NAME=“MyButton“ VALUE=“Click Me“ > <SCRIPT LANGUAGE=“VBScript“><SCRIPT LANGUAGE=“VBScript“> <!--<!-- Sub MyButton_OnClick()Sub MyButton_OnClick() MsgBox “Hello World! MsgBox “Hello World! ““ EndSubEndSub -->--> </SCRIPT></SCRIPT> </BODY></BODY> </HTML></HTML>