![]() |
Delay abbrechen
Hallo,
ich wollte mal fragen ob man die delay Funktion extern(mit einer anderen procedure) abbrechen kann? |
Re: Delay abbrechen
Delphi-Quellcode:
var StillDelay: Boolean;
... StillDelay := True; ... while StillDelay do begin Delay; end; ... |
Re: Delay abbrechen
Schau dir mal die verschiedenen Delay-Versionen an, bei den meisten kannst du die Abbruchbedingung erweitern ;)
z.B. in ![]()
Delphi-Quellcode:
until ((stop - start ) >= msec) or irgendwasanderes;
|
Re: Delay abbrechen
Also ich hab jetzt verstanden was da gemeint ist aber der nimmt das nicht an der sagt immer ein error:
Zitat:
|
Re: Delay abbrechen
Zitat:
Du musst Dir eine Variable schaffen, die festhält das der Button gedrückt wurde. Button1.clicked soll das nur verdeutlichen. Einfacher wäre es mit einer Checkbox zu lösen. Grüße Klaus |
Re: Delay abbrechen
Delphi-Quellcode:
So ungefähr.
var
StopDelay: Boolean = false; // Buttonclick begin StopDelay := true; end; // Delay [...] until ((stop - start ) >= msec) and (StopDelay); |
Re: Delay abbrechen
Code:
UNTIL verläßt die Schleife, wenn TRUE.
until ((stop - start ) >= msec) [color=#ff0000][b]or[/b][/color] StopDelay;
@Spider: deines bricht erst ab, wenn der Button gedrückt wurde und die Zeit abgelaufen ist. |
Re: Delay abbrechen
wenn ich das compilieren will sagt der mir nen error in der variable an. Was hab ich denn jetzt wieder falsch gemacht?
Kann es sein, dass es daran liegt dass ich delphi 10 light benutze? |
Re: Delay abbrechen
Was für einen Error?
Und hast du die auch global definiert? |
Re: Delay abbrechen
-- Mist verzapft --
gelöscht. grüße Klaus |
Re: Delay abbrechen
Undeclared identifer: 'StopDelay'
Komisch die Variable hab ich doch drin wieso sagt der denn dass die nicht deklariert ist. Also mit dem global das hab ich wohl nicht wie muss ich das denn machen? |
Re: Delay abbrechen
Was ist denn jetzt??? Wie muss ich das machen kann mir nicht einer genau erklären wie ich das machen muss?
|
Re: Delay abbrechen
Pushen ist erst nach 24 stunden erlaubt :warn:
Ohne Quelltext können wir dir leider nicht helfen :roll: |
Re: Delay abbrechen
Ok hier ist der quelltext ich brauch nur den stopdelay rein:
Zitat:
|
Re: Delay abbrechen
1. Benutze biutte die Delphi-Tags
2. Ohne Code-einrückung schwer zu erkennen -.- 3. i++ gibt es in delphi nicht! Benutze
Delphi-Quellcode:
oder
inc(i);
Delphi-Quellcode:
4. Meiner meinung nach kann man URL's nicht mit ShellExecute aufrufen (Lieber Browser damit oeffnen mit parameter als URL)
i:=i+1;
5. Ist es in diesem Falle unnötig Delay als procedure von TForm1 zu vereinbaren 6. Zu deinem Problem: Ich sehe da nirgens ein StopDelay. Du kannst eine Boolsche Variable nehmen und diese bei Buttonklick o.ä. auf true setzen und diese bedingung (wie oben beschrieben) bei der abbruchbedingung des Delay mit einbauen. |
Re: Delay abbrechen
Zitat:
Entweder direkt (wie oben), oder als Parameter an einen Browser. |
Re: Delay abbrechen
ich weiß dass das mit dem boolean nicht drin ist deshalb wollte ich ja auch dass das einer in den quelltext einbaut und das wieder postet. Das wäre echt nett da ich einfach nicht weiter komme.
|
Re: Delay abbrechen
Woran schietert es denn? ;) Wer nicht probiert, lernt nichts^^
|
Re: Delay abbrechen
Ja ich hab das schon 1000 mal probiert aber der sagt immer den error an den ich oben beschrieben habe. Der nimmt das nicht an mit der boolean variablen.
|
Re: Delay abbrechen
Dann Poste doch mal den Quelltext der NICHT funktioniert, damit wir dir helfen können :roll:
|
Re: Delay abbrechen
Also das Problem hat sich gerade ebend erledigt ich musste die Variable StopDelay einfach nur Global deklarieren. Da hätte ich auch von Anfang an drauf kommen können :wall: :-D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:34 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 by Thomas Breitkreuz