Also irgend wie hat der Kolege mich falsch verstanden
der Timmer wird von einer anderen Procedur gesteuert erst wenn da sich einige zeit nix tut schaltet der Timer auf false
so gesehen 2 Timer die gegen einander arbeiten
beispiel
wird gesprochen der Bake Timer für wave wieder gabe wird gestopt (False)
keiner Spricht Baken Timer auf True gesetzt einen Reset gemacht
spricht keiner 30 Min (zeit variable) wird das Wave gespielt und die RS232 auf True gesetzt und das Button geladen
bis das Wave zu ende Ist danach muss das Butten geänmdert werden und die RS232 auf False gehen aber erst nach ende des Wave abspielens des weiteren wird der Timer auf False gesetzt
funktrioniert nur nicht wie ich das will
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| once: boolean = true;
begin
if (form3.Bake.Checked = true) then begin check.Enabled:=false; if pin = 'dtr' then DTR:= true; das geht if pin2 = 'rts' then RTS:= true; und das geht wenn unten die Zeilen für False onoff.Picture.Bitmap.LoadFromResourceName(HInstance,'ON_BIT'); if once then sndPlaySound(PChar('bake1.wav'),SND_ASYNC); Timer3.Enabled:=false; check.Enabled:=true; once:= false; onoff.Picture.Bitmap.LoadFromResourceName(HInstance,'OFF_BIT'); if pin = 'dtr' then DTR:= false; darf erst nach ende von wave passieren if pin2 = 'rts' then RTS:= false; und das auch. end; end; |
So ich denke das ist verständlicher die Prozeduren dürfen erst nach dem abgespielten wave passieren auser DTR und RTS true und bild ändern
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt.