![]() |
warten mit timer
wie kann ich einfach xx Millisekunden warten und dann weitermachen im Programm. Die Zeit muss nicht so genau sein.
Hab es so probiert, geht aber net. ok wird scheinbar nie 1 und das Programm lässt sich nicht mehr bedienen / schliessen.
Delphi-Quellcode:
mfg
Procedure TForm1.senden(Sender: TObject);
begin try Serial1.Active:=true; str := ''; shape1.brush.color := clred; str:= befehl + #13; label39.caption := str; befehl :=''; n:=serial1.TransmittText(str); ok:=0; timer1.enabled := true; // Timer starten while ok=0 do // so lange wie ok 0 ist nichts machen begin end; timer1.enabled := false; timer stoppen // hier kommt noch Code hin label33.caption := helpstr; if helpstr = 'ok' then shape1.brush.color := clgreen; except if Application.MessageBox('Kommunikationsfehler!','', MB_OK + MB_DEFBUTTON1) <> IDOK then raise; befehl :=''; str:=''; end; end; procedure TForm1.Timer1Timer(Sender: TObject); begin Timer1.Interval := 10; ok:=1; end; Torsten |
Re: warten mit timer
Willkommmen in der DP, :party: such mal nach ![]() |
Re: warten mit timer
Zitat:
Application.ProcessMessages dan reagiert dein Formular wenigstens wieder ;) |
Re: warten mit timer
Zitat:
Delphi-Quellcode:
ein
while ok=0 do // so lange wie ok 0 ist nichts machen
begin end;
Delphi-Quellcode:
zwischen begin und end sollte bei einer globalen Variablen abhilfe schaffen.
Application.processmessages;
Der Daniel |
Re: warten mit timer
hi,
anstatt delay kannst du auch sleep(millisekunden) verwenden. mit sleep friert die ganze anwendung ein. ich glaube, mit delay nicht. |
Re: warten mit timer
Danke für die schnellen Antworten, es funzt jetzt. Habe sleep genommen.
Mfg Torsten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz