PDA

Vollständige Version anzeigen : Timer im Formular (Access 2000)


hottemax
24.10.2001, 13:04
Hallo,

wie kann ich unter Access 2000 in einem Formular eine vordefinierte Zeit in Stunden, Minuten und Sekunden (z.B. 01:30:00) im Sekundentakt automatisch auf 00:00:00 zurücktimen. Dies soll funktionieren wie eine eine Uhr, nur das die Zeit rückwärtslaufen soll.

Kann mir jemand helfen.

mangan
25.10.2001, 12:22
Hallo Hottemax!

Hast Du das Problem inzwischen lösen können??
Würde mich auch interessieren.

Ciao

nike
25.10.2001, 12:54
Hi,
check mal den Zeitgeberintervall des Formulars.
Dann im VBA Teil des Formulars das Form_Timer Ereignis abfangen...

Bye

Nike

Alexandra, die zweite
25.10.2001, 13:07
Hiho,

du gehst in die Eigenschaften vom Formular, trägst du bei Zeitgeberintervall (Registerreiter "Ereignisse") eine Sekunde in Millisekunden ein (960? *kopfkratz*) und als Ereignis "Bei Zeitgeber" lässt du dann das entsprechende Ereignis ausführen (also Sekundenfeld = Sekundenfeld - 1 usw) (musst natürlich noch mit einbeziehen, das bei den Sekunden beim runterzählen mit 59 begonnen wird, und das die Minuten eines runterzählen, wenn die Sekunden wieder auf 0 usw)

:-),
Alex

aw70jr
25.10.2001, 16:01
Option Compare Database
'Ein Formular anlegen mit einem Textfeld namens Formular_Zeit
'das Textfeld mit dem Format Zeit,lang versehen und als Eingabeformat
'ebenfalls Zeit,lang wählen
'zwei Schaltflächen mit Namen Start und Stop
'ein Textfeld ausgeblendet mit Namen Startflag
'die Eigenschaft Zeitgeberintervall auf 1000 einstellen
'den entsprechenden Eigenschaften den Code zuweisen

Private Sub Form_Open(Cancel As Integer)
'Beim Öffnen des Formulars wird der Wert des Feldes
'Startflag auf 0 gesetzt
Me.startflag = 2
End Sub


Private Sub start_Click()
'beim Klick auf Start erhält das Feld Startflag den Wert 1
Me.startflag = 1
'Den Zeitgeber auf 1000 setzten
Me.TimerInterval = 1000
End Sub

Private Sub stop_Click()
'beim Klick auf Start erhält das Feld Startflag den Wert 2
Me.startflag = 2
End Sub

Private Sub Form_Timer()
'den Wert aus dem Formualr zwischenspeichern
zeit = Me.Formular_zeit

'prüfen, ob start gedrückt wurde
If Me.startflag = 1 Then

'prüfen, ob Zeit abgelaufen ist
If Formular_zeit = "00:00:00" Then
'wenn ja, die Meldung ausgeben "to be removed"
MsgBox ("Booooooooooooooom")
'Zeitgeber auf O setzten wenn Zeit abgelaufen ist
Me.TimerInterval = 0
Exit Sub

Else
'aktuellen Wert der Zeit minus 1 Sekunde
zeit = zeit - 1 / 100000
'Dem Feld im Formular den Wert zuweisen
Me.Formular_zeit = zeit
End If
'ende
Else
Exit Sub
End If
End Sub
'Ich hoffe, es klappt, bei mir hats funktioniert
'Gruß
'Andreas

hottemax
25.10.2001, 18:22
Hallo Andreas (aw70jr),

hat super geklappt...alles funktioniert bestens. Vielen, vielen Dank nochmals...,
auch an alle, die sich an diesem Thema beteiligt haben.

Horst

Bis demnächst auf dieser Internetseite !!!