Make your own free website on Tripod.com

VB - 7: Methoden

Wer, wie, was, wo?

Zunächst noch ein paar grundsätzliche Bemerkungen zu Splashscreens. Sie sollen nicht nur zur Vorstellung des gestarteten Programms dienen, sie können auch noch bestimmte Funktionen übernehmen.

Zum einen kennt Ihr sicher Shareware-Programme, die beim Start Registrierhinweise geben, gelegentlich auch mit Zeitschleifen. Zum anderen dienen sie oft auch als "Unterhalter" beim Laden von größeren Anwendungen (z.B. Office-Anwendungen, oder auch VB selber). Das Prinzip ist einfach: Während im Hintergrund die Hauptanwendung geladen wird (was man vor allem an den Festplattengeräuschen hören kann, wird vorab schonmal eine Splashscreen angezeigt, damit der Anwender schonmal beruhigt ist, daß sich da was tut.

Auch wenn unser Beispiel-Programm so klein ist, daß die Ladezeit kaum eine Rolle spielen wird, wollen wir während der Anzeige schonmal das Laden der Hauptanwendung in die Wege leiten.

Dazu erstellen wir zunächst mal eine Hauptform: In der oberen Toolbar das 2. Symbol von links fügt eine neue Form hinzu. Alternativ können wir auch im Projekt-Fenster im Kontextmenü "Add/Hinzufügen > New Form / neue Form" auswählen oder im Hauptmenü "Project > Add Form". Wir geben ihr den Namen "HauptForm", suchen uns eine schöne Hintergrundfarbe aus, unter Caption "Mathe-Max", und außerdem soll unsere Form natürlich auch ein Icon bekommen (das später dann als Symbol für unser ausführbares Programm genutzt wird). Dazu klicken wir in das Icon-Feld und wählen - genau wie beim Laden des Bildes in unser Splashscreen-Image-Control - ein passendes Icon aus. Wir sehen das Icon auch oben links im Titelbalken.

Außerdem fügen wir noch ein Image-Control ein. Wir nennen es "Kugel" und laden unter Picture diesmal ein kleines Icon, eine rote Kugel. Wir könnten diese auch als BMP laden, ein Icon hat jedoch den Vorteil, daß sich die runde Kugel nahtlos in unseren Hintergrund einfügt, da hier die Transparenz-Eigenschaft von Icons genutzt werden kann. Das soll für's Erste an Elementen mal genügen.

Jetzt gehen wir zunächst in das Codefenster unserer Splashscreen und wählen im DropDown-Menü oben links "Form" aus. Sofort erscheint im Hauptfenster ein Gerüst für das Form-Load-Ereignis (dem Standard-Ereignis bei Forms):

    Private Sub Form_Load()

    End Sub
 

Wir ergänzen es um zwei Befehle:

    Private Sub Form_Load()
        Splashscreen.Show
        Load HauptForm
    End Sub
 

Die erste Zeile bewirkt, daß die Splashscreen sofort nach dem Laden angezeigt wird, bevor der nächste Befehl, das Laden der Hauptform oder andere vorbereitende Befehle ausgeführt werden. Wir können hier Splashscreen.Show auch durch eine allgemeine Schreibweise ersetzen:

    Me.Show
 

"Me" bezieht sich auf die aktuelle Form.

Bei "Show" handelt es sich um eine sogenannte "Methode". Das sind Funktionen, die vom Programm aktiv eingeleitet und ausgeführt werden. Weitere Methoden sind z.B.:

Welche Methoden möglich sind, hängt vom jeweiligen Objekt ab, mit dem die Methode ausgeführt werden soll. Die Entwicklungsumgebung (ab VB5) gibt uns beim Schreiben Hilfestellung: Wenn wir in obigem Beispiel "Splashscreen." eingetippt haben, klappt eine kleine DropDown-Liste auf mit möglichen Eigenschaften (vor jedem Eintrag befindet sich ein symbolisches Fensterchen mit einer Hand) und Methoden (kleiner, grüner Klotz, der sich "bewegt"), die für Splashscreen (eine Form also) möglich sind. Wir können die gewünschte Methode durch Scrollen mit der Maus oder der Cursortaste oder durch Eintippen der ersten Buchstaben ansteuern und wenn wir am richtigen Eintrag sind, entweder durch Doppelklick mit der Maus oder mit der Tab-Taste auswählen (natürlich können wir ihn auch einfach eintippen ). Probiert's einfach mal aus!

Bei Load handelt es sich um einen Befehlsaufruf (Statement). Je nach Befehl sind unterschiedliche Argumente (manchmal auch keine wie z.B. bei dem bereits verwendeten "End") notwendig. Die Entwicklungsumgebung kommt uns auch hier zu Hilfe. Sobald wir das Leerzeichen hinter "Load" eingeben, taucht unterhalb eine kleine Toolhelp auf, die uns die notwendigen oder möglichen Argumente angibt.

Wenn mehrere Argumente abzuarbeiten sind (diese werden stets duch Kommata getrennt), ist jeweils der Teil, der gerade bearbeitet wird, fett geschrieben. Optionale Argumente stehen in eckigen Klammern.

Jetzt aber weiter zu unserem Programm! Wir ersetzen den Ende-Befehl in unserem Command1-Click-Ereignis durch einen etwas sinnvolleren Befehl:

    Private Sub Command1_Click()
        HauptForm.Show
        Unload Me
    End Sub
 

Auch hier wenden wir wieder eine Methode an. "Show" zeigt nun die bereits im Hintergrund geladene Hauptform an (hätten wir sie nicht bereits geladen, würde sie jetzt durch die Show-Methode auch gleich geladen, was aber unter Umständen etwas länger dauern kann). Das Unload-Statement entlädt die Splashscreen aus dem Speicher. Wir könnten hier auch die Hide-Methode anwenden ("Me.Hide"), dann würde unsere Splashscreen zwar verschwinden, aber weiterhin Speicherplatz belegen. Dies ist nur dann sinnvoll, wenn eine Form nochmal angezeigt werden soll (z.B. bei Options-Fenstern), doch dazu später mehr.

Bevor es weiter geht, erstmal einen Blick auf den aktuellen Stand:

Beispielprojekt laden

Anmerkung: Auch wenn es sich weiterhin um das gleiche Projekt handelt, numeriere ich alle Beispiele fortlaufend durch, damit sie leichter wiederzufinden sind. Im Normalfall würden wir immer das aktuelle Projekt überschreiben (Backups vor größeren Änderungen sind allerdings empfehlenswert).

zurück Index weiter


© Copyright 1998-2000 J.Behling EMail schreiben ABC-Ware's Homepage
Weitergabe und Druck (auch in Teilen, mit Ausnahme von Privatgebrauch) ohne ausdrückliche Genehmigung der Autorin untersagt.