Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Prozedur für 1 Sekunde anhalten (https://www.delphipraxis.net/60413-prozedur-fuer-1-sekunde-anhalten.html)

meisteralex 6. Jan 2006 15:34


Prozedur für 1 Sekunde anhalten
 
Hi Leute ist es möglich eine Prozedur für 1 Sekunde anzuhalten undzwar nur diese ?
Also das Programm und alle anderen Prozeduren sollen weiterlaufen, nur diese eine Prozedur soll eine Sekunde angehalten werden ?

danke

Christian18 6. Jan 2006 15:36

Re: Prozedur für 1 Sekunde anhalten
 
Zitat:

Zitat von meisteralex
Hi Leute ist es möglich eine Prozedur für 1 Sekunde anzuhalten undzwar nur diese ?
Also das Programm und alle anderen Prozeduren sollen weiterlaufen, nur diese eine Prozedur soll eine Sekunde angehalten werden ?

danke

Hi,

mach es doch mir Delay(100);

PeterRettig 6. Jan 2006 15:38

Re: Prozedur für 1 Sekunde anhalten
 
Wie wird denn diese Prozedur aufgerufen? Mit einem Timer, als eigener Thread?

Ein sleep(1000) erledigt das normalerweise....

md_mse 6. Jan 2006 15:38

Re: Prozedur für 1 Sekunde anhalten
 
Delay? Wusste nicht das es diese Methode gibt...

Naja, eine Prozedur anhalten, kann man logischer weise ja nicht. Aber den ausführenden Thread:
Delphi-Quellcode:
Sleep(1000);

Die Muhkuh 6. Jan 2006 15:41

Re: Prozedur für 1 Sekunde anhalten
 
Hi,

bei Sleep wird aber die gesamte Anwenung für eine Sekunde eingefroren.

Um das zu vermeinden, muss man, wie schon gesagt, DelayDelay verwenden

Chegga 6. Jan 2006 15:45

Re: Prozedur für 1 Sekunde anhalten
 
Hi,

@md_mse:
Zitat:

Zitat von meisteralex
Also das Programm und alle anderen Prozeduren sollen weiterlaufen, nur diese eine Prozedur soll eine Sekunde angehalten werden?

Nach meinem Wissensstand ist dies mit Sleep nicht möglich.
Wenn er Sleep(1000); ausführt, friert die gesamte Anwedung für 1000 Millisekunden bzw. für 1 Sekunde ein.

:arrow: Hier im Forum suchenDelay bzw. DelayDelay

MfG Marc

md_mse 6. Jan 2006 15:52

Re: Prozedur für 1 Sekunde anhalten
 
Durch dieses Delay wird aber nicht die Prozedur eingefrohren, sondern das gesamte Porgramm... Der einzige Unterschied ist, dass die Windows-Messages weiter abgearbeitet werden...

SirThornberry 6. Jan 2006 15:54

Re: Prozedur für 1 Sekunde anhalten
 
alle anderen Proceduren sollen weiterlaufen? dann wäre das einfachste die eine procedure in einen Thread auszulagern.

@md_mse: Da die windowmessages verarbeitet werden, werden auch die mausmessages verarbeitet und somit auch die buttonklickereignisse. Wenn diese ereignisse bzw. messages dann abgearbeitet sind gehts mit der ursprünglichen procedure weiter.

meisteralex 6. Jan 2006 16:43

Re: Prozedur für 1 Sekunde anhalten
 
also das mit dem delay klappt bei mir wunderbar, alle anderen prozeduren(habs mit nem timer getestet) laufen einwandfreiweiter

faux 6. Jan 2006 16:53

Re: Prozedur für 1 Sekunde anhalten
 
Zitat:

Zitat von md_mse
Durch dieses Delay wird aber nicht die Prozedur eingefrohren, sondern das gesamte Porgramm...

Ich habe mehrere Delay's in der CodeLib gefunden und mir nicht alle angesehen, aber denn du zum Beispiel dieses hier benutzt, wird nur die aktuelle Prozedur/Funktion angehalten, da Application.ProcessMesages; aufgerufen wird.

Grüße
Faux


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr.
Seite 1 von 2  1 2   

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