Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Warten bis die Variable einen bestimmmten Wert hat. (https://www.delphipraxis.net/48873-warten-bis-die-variable-einen-bestimmmten-wert-hat.html)

delphi_newbie_123 1. Jul 2005 16:00


Warten bis die Variable einen bestimmmten Wert hat.
 
Hi nochmal,
Ich habe das Problem, dass ich nun einige Prozeduren gescvhrieben habe, und Sie nun in einer beliebigen Reihenfolge aufrufen will.
Aber die nächste Prozedur soll nur dann ausgeführt werden, sobald die Prozedur davor abgeschlsosen wurde.
Zur Hilfe habe ich eine Variable "active" benutzt, die mir nun mitteilt, ob eine Prozedur aktiv ist oder das Programm mit der nächsten anfangen kann.
nun habe ich zb.:
Delphi-Quellcode:
disable;
enable;
dabei wird mit hilfe eines Timers, nacheinander im Abstand von 1 Sekunde 10 Buttons deaktiviert
enable soll dann einen anderen Timer einschalten, der nun widerrum die ganzen Buttons wieder aktiviert.
Also an der Stelle habe ich jetzt das Problem, dass ich nicht diese 2 Prozeduren auf deise Weise aufrufen kann, da sonst beide Timer auf 1mal aktiviert werden würden?╗.
Nun will ich, dass das Program abwartet bis der Timer1 mit seiner Aufgabe fertig ist und die Variable active auf 0 setzt.
Geht es ohne einen 3ten Timer ?
Danke im Vorraus

Marphy 1. Jul 2005 16:08

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
Hallo,

Zitat:

Zitat von delphi_newbie_123
Geht es ohne einen 3ten Timer?

Ja, und zwar noch viel einfacher... enable() einfach im OnTimer-Event des 1. Timers aufrufen, sobald dieser alle Buttons deaktiviert hat... :wink:

Gruß, Marco

delphi_newbie_123 1. Jul 2005 16:15

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
ja hehe, :wall:
aber es wär trotzdem interessant obs hier auch anders geht.
Delphi-Quellcode:
disable;
//immer wiederprüfen, ob active=0
//falls ja
enable;
gehts so irgendwie ?
ehrlich gesagt wüsste ich jetzt sogar nciht wies mit einem 3ten Timer ginge, falls ich 100 solcher Prozeduren in Reihe hätte
danke für die Antwort

nailor 1. Jul 2005 16:18

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
du könntest es im OnIdle des Formulars checken. Was aber genauso schwachsinnig wie der dritte Timer wäre.

delphi_newbie_123 1. Jul 2005 16:23

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
ja :/
wenn ich zb soetwas habe:

Delphi-Quellcode:
disable;
enable;
disable;
andereprozedur;
dann kann man nicht mehr im Timer1 festlege, dass der 2te angemacht werden soll, es wird nun auf einmal der 3te benütigt
edit:
Ich kann den Intervall eines Timers auslesen und weiss wie lange die Pause zwischen den Prozeduren sein soll.
Gibt es auser sleep, noch einen pausebefehl in delphi ?
edit2:
oder koennte man ein showmessage simulieren, das sich automatisch nach der bestimmten zeit schliesset.
Die halten den Script doch solange an bis man ok drückt ?

Marphy 1. Jul 2005 17:05

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
Hallo,

Zitat:

Zitat von delphi_newbie_123
Gibt es auser sleep, noch einen pausebefehl in delphi ?

Du könntest das Intervall in mehrere Einzelintervalle aufteilen, diese dann mit Sleep() in einer Schleife abarbeiten und nach jedem Sleep() ein Application.ProcessMessages() einfügen... Ist aber alles eine Schlunzlösung.

Gruß, Marco

Phistev 1. Jul 2005 17:06

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
Such mal nach Hier im Forum suchenDelay (bei Millisekunden) oder nutz:
Delphi-Quellcode:
repeat
  Application.ProcessMessages;
until active = 0

delphi_newbie_123 1. Jul 2005 19:47

Re: Warten bis die Variable einen bestimmmten Wert hat.
 
super danke..genau das Richtige!


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