Ablauf blokiert Programm

Neo010606

Grünschnabel
Hallo, Ich habe in meinem Programm folgendes Sub das immer wieder (in bestimmten Zeitabständen) Ausgeführt

Sub Ablauf()
starttime! = Timer
Picture1.Picture = LoadPicture("C:\SDF\rot.gif")
out 888, 9 'Ampel Rot + Ton
Do
Loop Until Timer > starttime! + 1
out 888, 1 'Ampel Rot
Do
Loop Until Timer > starttime! + 10
Picture1.Picture = LoadPicture("C:\SDF\leer.gif")
Picture2.Picture = LoadPicture("C:\SDF\Gelb.gif")
out 888, 10 'Ampel Gelb + Ton
Do
Loop Until Timer > starttime! + 10.5
out 888, 2 'Ampel Gelb
Do
Loop Until Timer > starttime! + 11
out 888, 10 'Ampel Gelb + Ton
Do
Loop Until Timer > starttime! + 11.5
out 888, 2 'Ampel Gelb
Do
Loop Until Timer > starttime! + 12
out 888, 10 'Ampel Gelb + Ton
Do
Loop Until Timer > starttime! + 12.5
out 888, 2 'Ampel Gelb
Do
Loop Until Timer > starttime! + 13
out 888, 10 'Ampel Gelb + Ton
Do
Loop Until Timer > starttime! + 13.5
out 888, 2 'Ampel Gelb
Do
Loop Until Timer > starttime! + 14
out 888, 10 'Ampel Gelb + Ton
Do
Loop Until Timer > starttime! + 14.5
out 888, 2 'Ampel Gelb
Do
Loop Until Timer > starttime! + 15
Picture2.Picture = LoadPicture("C:\SDF\leer.gif")
Picture3.Picture = LoadPicture("C:\SDF\Grün.gif")
out 888, 12 'Ampel Grün + Ton
Do
Loop Until Timer > starttime! + 17
out 888, 4 'Ampel Grün
Do
Loop Until Timer > starttime! + 25
Picture1.Picture = LoadPicture("C:\SDF\rot.gif")
Picture3.Picture = LoadPicture("C:\SDF\leer.gif")
out 888, 1 'Ampel Rot
Exit Sub

End Sub

Nun hab ich das Problem, man kan am Programm während dieser Zeit nichts anderes machen (Startzeiten ändern usw). Meine Frage, kann man diesen ablauf irgendwie anders schreiben so das er das Programm nicht blokiert? Also irgendwie im Hintergrund.
Muß noch sagen das ich in VB ein neuling bin.
Vielen Dank schonmal.
 
Die Lösung ist Threading, mach ne neue Form und lass die den befehl ausführen, dann kann man auf der haupt form weiterarbeiten.

mfg Michi
 
Zurück