PDA

Vollständige Version anzeigen : Rahmenfarbe für einen kurzen zeitraum ändern


Donner77
24.10.2003, 13:33
Hallo freunde, hier erstmal der code zur veranschaulichung

If DBVergleich <> KomBfeld.Column(2) Then
Me.Rahmen.BackColor = vbRed 'Hier soll der Rahmen für 3
Me.Refresh 'Sekunden rot erscheinen
'(siehe timer.ereignis unten)
DBVergleich = Null
DBVergleich.SetFocus
n = Timer + 3
Do Until n <= Timer
Loop
me.rahmen.backcolor = vbgreen 'erst nach den 3 sekunden
me.refresh 'soll die rahmenfarbe wieder
GoTo ende ' in grün umschlagen!
End If


Das Problem bei der ganzen geschichte ist, dass bei dieser Prozedur die Rahmenfarbe die ganze Zeit grün bleibt!!!! Was mache ich falsch? habe das rot ereignis auch schon in das timer ereignis gesetzt nur leider klappt es einfach nicht! kann mir bitte wer helfen!

WMS
24.10.2003, 13:45
versuch das mal:

If DBVergleich <> KomBfeld.Column(2) Then
Me.Rahmen.BackColor = vbRed 'Hier soll der Rahmen für 3
Me.Refresh 'Sekunden rot erscheinen
'(siehe timer.ereignis unten)
DBVergleich = Null
DBVergleich.SetFocus
Me.Timerintervall = 3000
End If

im Formular 'Bei Zeitgeber'

me.rahmen.backcolor = vbgreen 'erst nach den 3 sekunden
me.refresh 'soll die rahmenfarbe
Me.Timerintervall = 0

Mike
24.10.2003, 13:46
verwende nach 'Me.Rahmen.BackColor = vbRed': DoEvents, dann geht's.

Mike

Donner77
24.10.2003, 13:58
Sorry hab es schon gelöst habe mit einem lost und got focus ereignis gearbeitet...

Donner77
24.10.2003, 13:58
danke trotzdem für eure hilfe!!!

Mike
24.10.2003, 15:34
auch auf die Gefahr, dass ich mich wiederhole. So mag es ja auch gehen, aber die saubere Lösung ist die mit DoEvents.

Mike