Zum vorherigen AbschnittZum nächsten Abschnitt Eine Pause einlegen...
Sehr oft will man, das VB eine bestimmte Zeitspanne lang abwartet, bevor fortgefahren wird. Aber anstatt dann zu versuchen, das Problem mit unzähligen Timern zu lösen, sollte man einfach zu der hier gezeigten Funktion greifen.
Vielleicht kennen Sie bereits die API-Funktion Sleep. Jedoch bietet die hier vorgestellte Funktion zwei gewaltige Vorteile: Erstens sind keine komplizierten APIs nötig und alles ist mit internen Mitteln lösbar und zweitens "friert" nicht das gesamte Programm für diese Zeitspanne ein.
Ihre Bewertung:
 12345
    

Bewertung dieses Tipps:  (bewertet von insgesamt 66 Besuchern)

 Zum vorherigen AbschnittZum nächsten Abschnitt Die Funktion
Wie immer gilt: Wenn Sie die folgenden Funktion in einem Modul plazieren, ist sie im gesamten Projekt verfügbar:

Sub Pause(Seconds As Single)
   Dim Timer1 As Single, Timer2 As Single, currentDate As Date
   currentDate = Date
   Timer1 = Timer + Seconds
   Timer2 = Timer1 - 86400 '24 Stunden

   While ((Timer() < Timer1) And (currentDate = Date)) Or _
         ((Timer() < Timer2) And (currentDate + 1 = Date))
      DoEvents 'Andere Prozesse nicht behindern
   Wend
End Sub

 Zum vorherigen AbschnittZum nächsten Abschnitt Aufruf
Der Aufruf der Funktion ist sehr leicht. Sie müssen als Argument nur die Wartezeit in Sekunden angeben. Natürlich sind auch Angaben kleiner 1 erlaubt. Beispiel:

MsgBox "Jetzt schlafe ich erstmal 2 Sekunden"
Pause 2 'entspricht 2000 ms
MsgBox "*Gähn* Ein bißchen mehr Schlaf wäre schon gut."
MsgBox "Also nochmal 1½ Sekunden..."
Pause 1.5 'entspricht 1500 ms
MsgBox "Nur noch 100 Millisekunden..."
Pause 0.1 'entspricht 100 ms
MsgBox "So, jetzt bin ich fit"



Quellen: SHADOWare.de, Micha (PaNiC-TooLz.de)
Letzte Änderung: 06.08.00
©2000 by SHADOWare, Thomas Bachem