
Visual Basic ist keine ideale Umgebung für präzises Timing. Eine Voraussetzung, die bei Vorgängen mit Zeitmessungen gegeben sein sollte, ist daß keine anderen Prozesse ablaufen. Schließen Sie alle anderen Anwendungen außer Ihrem Programm.
Visual Basic stellt mehrere zeitbezogene Möglichkeiten zur Verfügung. Wenn eine Genauigkeit von plus/minus einer Sekunde aureichend ist, kann die Timer-Funktion verwendet werden. Diese gibt die Anzahl der Sekunden zurück, die seit Mitternacht vergangen sind. Bevor Sie diese Funktion benutzen, überprüfen Sie die Systemzeit ihres PC (tippen Sie 'time' bei der Eingabeaufforderung im DOS-Modus. Falls nötig, korrigieren Sie diese Einstelllung. Bedenken Sie, daß bei Arbeiten zur vorgerückten nächtlichen Stunde der Sprung in den nächsten Tag Auswirkungen auf Ihre Ergebnisse hat!
Nachfolgend ist ein einfaches Beispiel angeführt, daß die Timer-Funktion benutzt. Die verstrichene Zeit seit Mitternacht wird bei einem Click auf die Start-Schaltfläche gespeichert, und erneut bei einem Click auf die Stop-Schaltfläche. In dem Textfeld wird die Zeit zwischen den Clicks auf die Start- und die Stop-Schaltfläche angezeigt. Start und Ende sind globale Variablen (vom Typ Long, deklariert wie folgt: Public Start As Long).
![]() |
Private Sub cmdStart_Click () Start = Timer End Sub Private Sub cmdStop_Click () Ende = Timer Text1.Text = Ende - Start End Sub |
Manchmal, wenn beispielsweise Geschwindigkeiten von Mausbewegungen aufgezeichnet werden sollen, werden Zeitintervalle von weniger als einer Sekunde Länge ausgewertet werden müssen. Diese können in VB nicht akkurat behandelt werden, aber eine gute Annäherung kann mit dem Zeitgeber-Steuerelement erzielt werden, welches in der Werkzeugsammlung unter dem Symbol
gefunden werden kann.
Plazieren Sie ein Zeitgeber-Steuerelement auf Ihre Form (es wird zur Laufzeit nicht sichtbar sein). Setzen Sie die Intervall-Eigenschaft auf 100 (das Intervall wird in Millisekunden gemessen, somit bedeutet diese Einstellung, daß sämtlicher Code hinter dem Zeitgeber-Steuerelement jede Zehntelsekunde ausgeführt wird). Nachfolgend sind zwei Bildschirmausschnitte zu sehen, der linke zeigt das Zeitgeber-Steuerelement zur Entwurfszeit, und der rechte zeigt das Aussehen zur Laufzeit. Dieses Programm mißt die verstrichene Zeit in Zehntelsekunden zwischen dem Clicken auf die Start-Schaltfläche und auf das Rechteck (ein Bildfeld-Steuerelement).
Private Sub cmdStart_Click () Verstrichen = 0 ' eine globale Variable Timer1.Enabled = True End Sub Private Sub Timer1_Timer () Verstrichen = Verstrichen + 1 End Sub Private Sub Picture1_Click () Timer1.Enabled = False Text1.Text = Verstrichen End Sub
Das Zeitgeber-Steuerelement ist speziell dort nützlich, wo zeitgebundene Abläufe vorkommen sollen, die keine absolute Präzision haben müssen. Beispielsweise in einem öffentlichen Informationssystem möchten Sie automatisch zum Begrüßungsbildschirm zurückschalten lassen, wenn für etwa zwei Minuten keine Interaktion stattgefunden hat. In einem computerunterstützten Lernprogramm möchten Sie irgendeine Art von Hilfe zur Verfügung stellen, wenn der Benutzer auf eine Frage nach einer bestimmten Zeit noch keine Antwort gegeben hat. In interaktiven Spielen werden Zeitgeber verwendet, um das Aussehen des Bildschirms zu ändern, um beispielsweise den Eindruck eines 'lebendigen' Buches zu suggerieren.
Hauptseite