Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi hilfe!repeat-schleife mit abbruchfunktion (https://www.delphipraxis.net/54739-hilfe-repeat-schleife-mit-abbruchfunktion.html)

whiteshark 10. Okt 2005 20:18

Re: hilfe!repeat-schleife mit abbruchfunktion
 
@PierreB: deine Variante geht, aber man kann nicht abbrechen. Es fehlt eine Applikation.Processmessage;

Delphi-Quellcode:
var
test : Boolean;

//Jetzt die Schleife bei klick auf Button1
procedure form1.Button2click(Sender : TObject);
begin
repeat
//Dein Net Send Zeug
application.processmessage;
until test = true;
end;

//Jetzt bei Klick auf Button2 wirds abgebrochen
procedure form1.Button2click(Sender : TObject);
begin
test := true;
end;
Ich habe es bei mir probier, es sollte so gehen.

Chegga 10. Okt 2005 20:21

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Hi,

was hat das Ganze mit einer Endlosschleife zu tun? :gruebel:
Zitat:

...ich will ein kleines Program schreiben, dass eine Endlosschleife produziert die jedoch...
Eine Endlosschleife ist imho sowas:

Delphi-Quellcode:
var
  i: Integer;
.
.
.

i := 0;
repeat
  dec(i);
until
  i >= 0;
MfG Marc

LoRd-MuldeR 10. Okt 2005 20:23

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Ja, aber mit der Endlosschleife und dem ProcessMessages hast du ja ne CPU Auslastung von 100%

Ich würd das so machen:

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  //Dein Net Send Zeug
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Timer1.Interval := 100;
  Timer1.Enabled := True;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Timer1.Enabled := False;
end;

PierreB 10. Okt 2005 20:25

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Zitat:

was hat das Ganze mit einer Endlosschleife zu tun?
Nicht viel. Er meinte eine Schleife die etwas immer wiederholt bis man es durch einen Button-Klick abbricht. Vielleicht nicht gute Wortwahl, jedoch kann man aus dem Post erkennen was er machen will. ;)

Nikolas 10. Okt 2005 20:32

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Delphi-Quellcode:
var
  i: Integer;
.
.
.

i := 0;
repeat
  dec(i);
until
  i >= 0;
Das ist aber auch keine Endlosschleife. Irgendwann bis du bei low(Integer) angekommen.

skreap 10. Okt 2005 20:34

Re: hilfe!repeat-schleife mit abbruchfunktion
 
ok...ich werd mal testen und morgen vllt mal meine Kollegen fragen soweit scheint es zu gehen nur Messages kommen nicht an ... trotzdem vielen Dank für eure Hilfe

Tschau
skreap

raffo 10. Okt 2005 21:51

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Ich behelfe mir immer so

Delphi-Quellcode:
Button1.Tag:=0; // Annahme nicht gestoppt

While Button1.Tag=0 do
      begin
// Routine
      Application.ProcessMessages;
      end;

Button1.Tag:=0; // oder zur späteren Auswertung auf Wert lassen

tigerman33 11. Okt 2005 11:44

Re: hilfe!repeat-schleife mit abbruchfunktion
 
Das ist eine Endlosschleife:
Delphi-Quellcode:
while 0<>1 do
  ...

TeronG 11. Okt 2005 11:52

Re: hilfe!repeat-schleife mit abbruchfunktion
 
@skreap: Ändere doch bitte mal deinen Titel .. sonnst wird hier noch seitenweise diskutiert was alles ne Endlosschleife ist oder nicht. :mrgreen:

Zum Problem: Wenn du ne schleife aber keine 100% haben willst kannste ja ein "wait" einbauen (pause ohne sleep siehe DP) ansonnsten würd ich eher nen Timer empfehlen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 Uhr.
Seite 2 von 2     12   

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