Am 24.12.2005 um 22:46 schrieb Mike Ott:
Schöne Weihnachten allerseits!
Danke gleichfalls ;)
Ich möchte gerne während des Startvorgangs meiner App, d.h. bis zum
Erscheinen des ersten regulären Fensters, ein Wartefenster anzeigen
lassen.
Habe leider keine Erfahrung mit Threads und wäre froh um etwas
Beispiel
Code, wie man das realisiert.
Grundsätzlich brauchst du dafür keine Threads ausser du bist noch
sehr viele Daten am laden und möchtest in dem Fenster auch gerade den
Ladevorgang anzeigen.
Als erstes würde ich mal das Default Fenster des Projekt auf das neue
Fenster stellen (es ist ja jetzt das erste Fenster das aufgehen
muss). Und dann würde ich die Lademethoden im Open Event des neuen
Fensters starten.
Jetzt kommt es drauf an, was du alles am laden bist, wenn du Daten in
einer Schleife am lädst, dann würde ich die ganze Geschichte in einen
Thread schmeisen (neue Klasse erstellen, Super auf Thread setzten und
allen Code der ausgeführt werden soll in den Run Event der neuen
Klasse schreiben.
im SplashScreen dann eine Variable anlegen (datenLaden As MeinThread)
und im Open Event mit
datenLaden = new MeinThread
datenLaden.w = self // Fenster übergeben
datenLaden.run
Hier noch der Code der in der Run Event:
'Lade Daten:
dim d As Double = ganViel / 100
for i = 0 to ganzViel
'Hier Code um die Daten zu laden:
' Aktuallisieren der Anzeige:
w.progressBar1.value = Round(d * i)
next
' Hier kommt der Code der nach dem Laden der Daten ausgeführt werden
muss
w.goOn
In der goOn Methode im SplashScreen kommt dann alles weiter rein,
also SplashScreen schliessen und Hauptfenster öffnen.
Ich hoffe es war einigermassen verständlich.
gruss V