Zitat von
DelphiManiac:
Hier geht es um ein Frage Antwort Spiel (d.h. es muss definitiv auf die Antwort (oder Timeout) gewartet werden..)
Dazu benötigt man doch keinen Sleep!!
Delphi-Quellcode:
var
maxAntwort : double;
Endtime : TDateTime;
AntwortVorhanden : boolean; // die Variable muss im private Abschnitt des Form sein
begin
AntwortVorhanden := False;
maxAntwort := 5.5; // Sekunden
StelleFrage; // Frage auf Bildschirm klopfen
Endtime := Now + maxAntwort / (60.0*60.0*24.0);
while not AntwortVorhanden or (EndTime > Now) do
begin
// Ich warte !!
Application.ProcessMessages;
// Wenn der Benutzer eine Antwort gibt muss die Variable AntwortVorhanden auf True gesetzt werden
end;
if not AntwortVorhanden then
ShowMessages('Deine Zeit ist abgelaufen!!')
else
begin
// Antort prüfen
end;