Re: schleife will einfach nicht.
ohne i ist es aber viel einfacher, du machst
Delphi-Quellcode:
Und rufst dann beim Button
procedure SchleifenThread.Execute;
begin while not terminated do begin Synchronize(UpdatePing); sleep(2000); Synchronize(UpdatePong); sleep(2000); end; end;
Delphi-Quellcode:
auf
SchleifenThread.Terminate;
|
Re: schleife will einfach nicht.
Das Problem ist eben, dass du so nicht den Überblick behälst. Die Funktion Terminate ist ja genau dazu da, den Thread abzubrechen :) Also warum wirres Zeug programmieren, wenns schon vordefinierten Code dafür gibt :) Abgesehen davon würd ich dann eher ne Boolsche Variable nehme anstatt nem Interger i...aber vergiss das am besten wieder :)
Schönen abend noch! @Fussball-Robby: steht doch oben schon ;) |
Re: schleife will einfach nicht.
Zitat:
|
Re: schleife will einfach nicht.
Wie gesagt TApplication kennt er nicht ;) Ich weiss ja selber das es verwirrend ist.
Oder mach ich da nur was falsch ;) Luckys Thread PDF hat mir für heute das Hirn ausgeknipst :P |
Re: schleife will einfach nicht.
Zitat:
|
Re: schleife will einfach nicht.
Zitat:
Delphi-Quellcode:
D.h. du musst beim Button einfach schreiben:
Thread := SchleifenThread.Create(False);
Delphi-Quellcode:
Thread.terminate;
Fertig |
Re: schleife will einfach nicht.
Liste der Anhänge anzeigen (Anzahl: 1)
Jop das wars.
So hier nochmal nen Code update |
Re: schleife will einfach nicht.
Das mit Threads lösen zu wollen ist IMHO ein unnötiger overkill. Ein einfacher Timer tut das viel besser. Finde ich. Also so würde ich das machen. Nur sone idee... :stupid:
|
Re: schleife will einfach nicht.
Na dann zeig mal her :D
Wenn ich nen Timer benutzt hab, hat sich das Prog warum auch immer verabschiedet, oder er hat die Befehle nicht abgearbeitet. Naja aber hauptsache es läuft ;) |
Re: schleife will einfach nicht.
Zitat:
müsste dann ungefähr so aussehen:
Delphi-Quellcode:
nur runtergetippt & ungetestet
Var i:integer=0;
[..] implementation Procedure Timer1Timer(Sender:TObject); begin if i=0 then begin Label1.Caption:='Ping'; inc(i); end else begin Label1.Caption:='Pong'; Dec(i); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz