Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   brauche bishen hilfe damit die zeit im Edit runter leuft (https://www.delphipraxis.net/44660-brauche-bishen-hilfe-damit-die-zeit-im-edit-runter-leuft.html)

Die Muhkuh 24. Apr 2005 07:41

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Erstmal es gibt einen Edit-Knopf.

Zweitens: Schreib deutsch.


Setz den Intervall vom Timer auf 60000 (im ObjectInspector).
Delphi-Quellcode:
TForm1 = class(TForm) // Sowas in der Art sollte ziemlich weit oben stehen
private
  Counter: Integer;
public

end;

...

implementation

// Erzeuge ein Form.Create (im ObjectInspector die Form auswählen auf Ereignisse und doppel auf OnCreate dann sollte das da stehen:
procedure TForm1.Create(Sender: TObject);
begin
  Counter := 20;
end;

procedure Timer1.Timer(Sender: TObject);
begin
  Dec(Counter);

  if Counter = 0 then
  begin
    // Nach zwanzig Minuten
  end;
end;

MisterX 24. Apr 2005 07:43

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
es soll ein skill bot werden ür online games und bei manchen spielen mus man nach 24 StD
raus deswegen das auschalten das prog fuks ja nur es ist schlech wen die zeit die ich einstelle
immer so bleibt dan weis man nicht wifiel man noch zu warten hat und den queltext habe ich auch in einem teimer eingefügt un es geht ihrgen wie nicht :wall:

MisterX 24. Apr 2005 07:43

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
und ich will die zeit immer ferstelen

PierreB 24. Apr 2005 07:45

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Spiders Code etwas verbessert:
Delphi-Quellcode:
TForm1 = class(TForm) // Sowas in der Art sollte ziemlich weit oben stehen
private
  Counter: Integer;
public

end;

...

implementation

// Erzeuge ein Form.Create (im ObjectInspector die Form auswählen auf Ereignisse und doppel auf OnCreate dann sollte das da stehen:
procedure TForm1.Create(Sender: TObject);
begin
  Counter := 20;
end;

procedure Timer1.Timer(Sender: TObject);
begin
  Dec(Counter);
  edit1.text := IntToStr(Counter);

  if Counter = 0 then
  begin
    // Nach zwanzig Minuten
    ShowMessage('Zeit abgelaufen !');
  end;
end;

MisterX 24. Apr 2005 07:47

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
und er soll weiter machen er soll wieder fon forne machen keine masseg oder so die zeit soll einfach immer runter laufen

jfheins 24. Apr 2005 07:48

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Delphi-Quellcode:
if Counter = 0 then
  begin
    // Nach zwanzig Minuten
    Counter := 20;
  end;
:?:

alcaeus 24. Apr 2005 07:48

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Delphi-Timer fuer Anfaenger...Mann hast du Glueck dass ich letzte Nacht geschlafen habe.
  1. Neues Projekt in Delphi erstellen (ja, neu = leer).
  2. Timer, Edit, 2 Buttons auf die Form.
  3. Timer-Intervall auf 60000 einstellen.
  4. Caption von Button1 auf "Starten" setzen.
  5. Caption von Button2 auf "Stoppen" setzen.
  6. Doppelclick auf die Form um das OnCreate-Ereignis zu bekommen. Dort schreibst du:
    Delphi-Quellcode:
    Timer1.Enabled := False;
    Edit1.Text := '20';
  7. Doppelclick auf den Timer um das OnTimer-Event zu bekommen. Dort schreibst du:
    Delphi-Quellcode:
    Edit1.Text := IntToStr(StrToInt(Edit1.Text)-1);
    if Edit1.Text = '0' then
      Edit1.Text := '20';
  8. Doppelclick auf Button1 um das OnClick-Event fuer Button1 zu bekommen. Dort schreibst du:
    Delphi-Quellcode:
    Timer1.Enabled := True;
  9. Doppelclick auf Button2 um das OnClick-Event fuer Button2 zu bekommen. Dort schreibst du:
    Delphi-Quellcode:
    Timer1.Enabled := False;
  10. Testen.
So, nachdem du das hoffentlich geschafft hast, kannst du dir ueberlegen wie du den Code in deine Anwendung bekommst. Viel Spass

Greetz
alcaeus

MisterX 24. Apr 2005 07:49

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Delphi-Quellcode:
Edit1.Text := IntToStr(StrToInt(Edit1.Text)-1);
der ist schon richtig nur er will nicht funksen

Sharky 24. Apr 2005 07:51

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Hier eine ganz einfache Lösung. In diesem Beispiel wird davon ausgegangen das im Edit-Feld Sekunden angegeben wurden.
Delphi-Quellcode:
var
  Counter : Integer;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Edit1.Clear;
  Timer1.Enabled := False;
  Timer1.Interval := 1000; // = 1 Sekunde
end;

procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  Timer1.Enabled := False; // Wenn eine Taste gedrückt den Timer anhalten
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if not (Key in ['0'..'9',#8,#13]) then // Nur Zahlen, Del und Enter zulassen
  begin
    Key := #0;
  end;
  if (Key = #13) then // Wenn Enter gedrückt wurde
  begin
    Counter := StrToInt (Edit1.Text); // Countdown aus dem Edit nehmen
    Timer1.Enabled := True; // Timer wieder starten
  end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  DEC (Counter); // Die Counter runterzählen
  if (Counter = 0) then // Zeit ist abgelaufen
  begin
    Edit1.Clear;
    Timer1.Enabled := False;
    ShowMessage ('blubb');
  end
  else
  begin
    Edit1.Text := IntToStr (Counter); // Den aktuellen Countdown ins Edit
  end;
end;

alcaeus 24. Apr 2005 07:54

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Zitat:

Zitat von MisterX
der ist schon richtig nur er will nicht funksen

Koenntest du auch bitte mal sagen was nicht funktioniert? Wenn du mit "nicht funksen" meinst dass die Zeit nicht sofort runtergehst, das passt schon so, erstmal auf Starten klicken und eine Minute warten.
Ich habs soeben probiert, das Beispielprojekt das du vorhin zusammengeklickt hast funktioniert einwandfrei (wie erwartet).

Greetz
alcaeus


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:22 Uhr.
Seite 4 von 5   « Erste     234 5      

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