Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Pause in if.. else.. Verzweigung (https://www.delphipraxis.net/140567-pause-if-else-verzweigung.html)

Major1337 21. Sep 2009 09:03


Pause in if.. else.. Verzweigung
 
Hey,
ich möchte eine Art break in einer if / else Verzweigung

Delphi-Quellcode:
if .. then
begin
//..
end
else
//..
// BREAK;
end;
Bei // Break soll eine Pause folgen, wie kann ich das realisieren?

mirage228 21. Sep 2009 09:04

Re: Pause in if.. else.. Schleife
 
Erstmal ist das keine Schleife (sondern eine "IF"-Bedingung) :mrgreen:

Zu Deinem Problem: Verwende Delphi-Referenz durchsuchenSleep, um das Programm für eine gegebene Anzahl an Millisekunden zu pausieren :)

Viele Grüße

Klaus01 21. Sep 2009 09:07

Re: Pause in if.. else.. Schleife
 
Guten Morgen,

1€ in die Kaffeekasse für if/else Schleife, wo ist das bitte eine Schleife?

Ansonsten schau Dir mal Sleep oder delay an.

Grüße
Klaus

Major1337 21. Sep 2009 09:08

Re: Pause in if.. else.. Verzweigung
 
Er soll erst weitermachen, wenn eine andere Aktion ausgeführt wird.

DeddyH 21. Sep 2009 09:10

Re: Pause in if.. else.. Verzweigung
 
Erklär das mal genauer. Du kannst doch ereignisgesteuert arbeiten, indem die andere Aktion wieder diese Methode aufruft, oder versteh ich da was falsch?

Sir Rufo 21. Sep 2009 09:11

Re: Pause in if.. else.. Verzweigung
 
Delphi-Quellcode:
while not SollIchWeitermachen do Application.ProcessMessages;
Aber schön ist das so nicht.

Und so ballern wir uns auch nicht die CPU zu :mrgreen:

Delphi-Quellcode:
while
  not SollIchWeitermachen
do
  begin
    Application.ProcessMessages; // Mal die Anderen zu Wort kommen lassen
    if
      not SollIchWeitermachen
    then
      Sleep( 10 ); // 10 Millisekunden verschnaufen
  end;

uligerhardt 21. Sep 2009 09:15

Re: Pause in if.. else.. Schleife
 
Zitat:

Zitat von mirage228
Erstmal ist das keine Schleife (sondern eine "IF"-Bedingung) :mrgreen:

Clicky :lol:

Major1337 21. Sep 2009 09:16

Re: Pause in if.. else.. Verzweigung
 
Delphi-Quellcode:
if DateBeginSucheEdit.text <> '' then
  begin
    if DateEndSucheEdit.Text <> '' then
      begin
         tage := Round(StrToDate(DateEndSucheEdit.Text) - StrToDate(DateBeginSucheEdit.Text));
         
         if tage <= 10 then
         begin
          SmartQuery1.SQL.Add('and datum >= :ANFANG and datum <= :ENDE');
          SmartQuery1.ParamByName('ANFANG').Value := StrToDate(DateBeginSucheEdit.Text);
          SmartQuery1.ParamByName('ENDE').Value := StrToDate(DateEndSucheEdit.Text);
      end
      else
      ShowMessage('Differenz darf nicht über 10 Tage sein.');
      DateBeginSucheEdit.Clear;
      DateEndSucheEdit.Clear;
      DateBeginSucheEdit.SetFocus;


      // --BREAK--
       end
    else
      begin
        SmartQuery1.SQL.Add('and datum = :ANFANG');
        DateEndSucheEdit.Text := DateBeginSucheEdit.Text;
        SmartQuery1.ParamByName('ANFANG').Value := StrToDate(DateBeginSucheEdit.Text);
      end
  end
else
  begin
    if DateEndSucheEdit.Text <> '' then
      begin
         SmartQuery1.SQL.Add('and datum = :ENDE');
        DateBeginSucheEdit.Text := DateEndSucheEdit.Text;
         SmartQuery1.ParamByName('ENDE').Value := StrToDate(DateEndSucheEdit.Text);
    end;
  end;

  SmartQuery1.open;
end;


Bei Break soll die Pause folgen, andernfalls zeigt er doch alle Tage an, trotz Fehlermeldung.

mirage228 21. Sep 2009 09:17

Re: Pause in if.. else.. Schleife
 
Zitat:

Zitat von uligerhardt
Zitat:

Zitat von mirage228
Erstmal ist das keine Schleife (sondern eine "IF"-Bedingung) :mrgreen:

Clicky :lol:

:twisted:

@Major1337: Mach doch einfach ein "Exit" und lass den Benutzer die Methode erneut aufrufen? :gruebel:

Major1337 21. Sep 2009 09:19

Re: Pause in if.. else.. Verzweigung
 
Danke, Exit ist die Lösung. ^^


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