![]() |
Warten Befehl?
hi leute,...
gibts für delphi irgend einen "warten für.... Sekunden" befehel der das Programm für X Sekunden anhält? gruß freddy |
Re: Warten Befehl?
|
Re: Warten Befehl?
ja.
Achso eine richtige Antwort gibt's auch : Sleep |
Re: Warten Befehl?
jo, Sleep()
aber dann ist dein Programm auch tot in der Zeit... Roderich |
Re: Warten Befehl?
alles klar, danke!
in meiner delphi hilfe gab es den befehl allerdings net,... aber er funzt,... :hello: DANKE |
Re: Warten Befehl?
Ich benutz immer folgende procedure, gefunden im EDH:
Delphi-Quellcode:
procedure Wait(time: word);
var Start: Integer; begin Start:=GetTickCount; while GetTickCount-Start <= time do application.ProcessMessages; end; |
Re: Warten Befehl?
Zitat:
in der Delphi-Hilfe. Bedenke bitte, dass dieser Befehl seinen Namen gerecht wird, denn er legt Deine Applikation tatsächlich schlafen. Du kannst weder einen Button während diesem Intervall anklicken, noch kannst Du Dein Fenster verschieben. Siehe Dir auch hier die Lösung von MrKnogge an. Mit dieser Lösung ist Dein Fenster noch ansprechbar, auch während der Pause. Check this out. DANNYBOY |
Re: Warten Befehl?
Aus den oben besagten Gründen kann ich folgenden Konstrukt empfehlen.
Delphi-Quellcode:
var IrgendEineBedingungDieErfülltSeinSollte: Boolean;
. . . IrgendEineBedingungDieErfülltSeinSollte := False; . . . while (not IrgendEineBedingungDieErfülltSeinSollte) do begin Sleep(100); end; Dann steht dein Programm nicht still und du kannst bis zur Erfüllung deiner Bedingung warten. |
Re: Warten Befehl?
Zitat:
|
Re: Warten Befehl?
Jap genau.
Da müsste dann auf jeden Fall wieder ein ProcessMessages() rein, womit wir wieder in etwa bei der Lösung von MrKnogge wären. Fakt ist, wenn du in deinem Programm Sleep aufrufst, dann steht Dein Programm still. Wenn du das in der While-Schleife machst, dann springt es direkt wieder oben rein, und ruft wiederum Sleep auf, deswegen würdest du auch nie die Chance bekommen, deine While-Bedingung zu ändern, weil Dein Programm diese Code-Teile nicht ausführen würde. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:11 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