Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Dauerschleife unterbrechen (https://www.delphipraxis.net/133015-dauerschleife-unterbrechen.html)

vip11 23. Apr 2009 20:14


Dauerschleife unterbrechen
 
hallo

ich hab nen problem:
ich hab nen programm geschrieben das immer wieder die selbe aktion ausführen soll wenn man einen button drückt und damit aufhören soll wenn ich auf einen anderen drück. nur hab ich das problem das das programm hängt wenn ich den start button klick.
Delphi-Quellcode:
procedure TForm1.klicker;
begin
while onoff > 0 do
begin
//...//
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
onoff := 1;
klicker;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
onoff := 0;
end;
mfg vip11

p.s. hab sufu benutzt aber nichts gefunden :(

[edit=mkinzler]Code-Tag durch Delphi-Tag ersetzt Mfg, mkinzler[/edit]

mkinzler 23. Apr 2009 20:17

Re: Dauerschleife unterbrechen
 
Verwende einen Timer

mjustin 23. Apr 2009 20:18

Re: Dauerschleife unterbrechen
 
Delphi-Quellcode:
procedure TForm1.klicker;
begin
  while onoff > 0 do
  begin
    //...//
    Application.ProcessMessages;
  end;
end;
Application.ProcessMessages ist wichtig, um den anderen Bestandteilen der Benutzeroberfläche auch etwas von der Rechenzeit abzugeben. Dies ermöglicht es dem zweiten Button, den Mausklick zu erhalten.

Cheers,

mkinzler 23. Apr 2009 20:20

Re: Dauerschleife unterbrechen
 
Aber auch mit
Delphi-Quellcode:
Application.ProcessMessages;
wäre die Lösung recht suboptimal

vip11 23. Apr 2009 20:22

Re: Dauerschleife unterbrechen
 
ok thx für die schnellen antworten werde es sofort testen

edit:mit dem Application.ProcessMessages; hats geklappt

edit2: weiß vlt. noch einer wie ich die pixelzahl des bildschirms scan?

Forlan 23. Apr 2009 23:20

Re: Dauerschleife unterbrechen
 
Neue Frage = neuer Thread ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:00 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