![]() |
procedure von außerhalb abbrechen
Stellt euch mal vor, ich hätte ein Programm, das macht:
Delphi-Quellcode:
in echt macht es natürlich was Sinnvolleres, aber ich habe mir erlaubt, die Sache hierrauf zu vereinfachen...
procedure TForm1.Button1Click(Sender: TObject);
var i: byte; begin while true do begin inc(i); caption := inttostr(i); end; end; Was ich jetzt will ist im Grunde ein Button, - auf den ich klicken kann, während mein Programm zählt - wäre notfalls möglich mit ProcessMessages, aber das scheint mir die Sache sehr langsam zu machen - der dafür sorgt, dass das mein Programm aufhört zu zählen damit wäre ich für den Anfang (hoch) zufrieden. Michael |
Re: procedure von außerhalb abbrechen
Schau unter Thread's
vielleicht ist das was |
Re: procedure von außerhalb abbrechen
Ich könnte mir auch sowas wie eine Callback-Funktion vorstellen....
Innerhalb Deiner Schleife wird eine (als Parameter übergebene) Funktion aufgerufen, die eine Abbruchbedingung setzt procedure TuWas ( callbackfunc : function ); begin while bedingung do begin ... ... bedingung := callbackfunc; end; end Schau mal unter "Prozeduren und Funktionen als Parameter" Ciao |
Re: procedure von außerhalb abbrechen
@neo: Ich hatte danach gesucht, aber 199 (oder so) Treffer motivieren nicht, weiter zu suchen
@billa: werde ich machen |
Re: procedure von außerhalb abbrechen
|
Re: procedure von außerhalb abbrechen
Zitat:
ICh habe ja schon mal kurz reingeschaut, und grade was zu meckern:
Delphi-Quellcode:
procedure TForm1.UpdateLVCaption(Index, Count: Integer);
begin Listview1.Items[Index].SubItems[0] := 'Position: ' + IntToStr(Count); if Count >= 10000 then //<-- wenn da nur "=" steht, rennt mein schneller Rechner drüber weg, ohne was zu machen Listview1.Items[Index].SubItems[0] := 'fertig'; end; |
Re: procedure von außerhalb abbrechen
das musst du Luckie sagen ;) Aber selbst wenn es so ist, dann ist dies nicht wirklich gut.
Was ist das für eine Kiste ? Mein Arbeitsrechner 2,4 (glaub ich) GHz PIV schuckt den Kram. |
Re: procedure von außerhalb abbrechen
Der Luckie wird das auch hier lesen ;)
Das gleiche Thema hatten wir schonmal, da ginge es um eine Uhrzeit zu der was gestoppt werden sollte. >= ist auf jeden Fall besser. PS: Der Rechner ist nicht wirklich schnell, war eher ironisch, als ich meinte, dass er sogar so schnell ist, dass er das mit dem =10000 garnicht mitbekommt. (XP2000+) |
hmm,
meiner nimmt es, iss auch XP2000+ zuhause.
|
Re: procedure von außerhalb abbrechen
was verstehst du unter "nimmt es"? Es läuft bei mir auch, nur kommt nie Stopp, weil die wahrscheinlichkeit, dass die abfrage kommt, wenn es 10000 - und zwar genau 10000 - ist ist so klein, dass es bei mir noch nie der fall war, sondern der counter einfach immer weiter ging...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:35 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