Delphi-PRAXiS
Seite 1 von 5  1 23     Letzte »    

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)

MisterX 22. Apr 2005 12:22


brauche bishen hilfe damit die zeit im Edit runter leuft
 
brauche bishen hilfe damit die zeit im Edit runter leuft
zb ich stele 20min ein und dan nach einer min steht da 19min

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Interval:=StrtoInt(Edit2.text)*60000;
ShellExecute(Application.MainForm.Handle, nil, PChar( Edit1.Text),nil,nil, SW_SHOWMAXIMIZED);

end;

Wuaegner 22. Apr 2005 12:28

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
sowas nach der art:
Delphi-Quellcode:
 if (sek > 0) then dec(sek)
  else
    if (sek<= 0) then
     begin
      if (min > 0)then
       begin
       dec(min);
       sek:= 59;
       end;
halt mit min. und sekunden bei meinem Beispiel. du bräuchtest dann nur die minuten.

MisterX 22. Apr 2005 12:29

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
ja habe nur mit min gemacht das ganze funkst aber die zeit die ich einstele bleibt so wie sie ist und dan weis ich nicht wiefihle noch ferbleiben

ReDoX 22. Apr 2005 12:30

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Du Gibts dem Timer ein Interval von 1 Minute und OnTimer guckst du ob im dem Edit eine 1 steht wenn nicht geht die Zeit im edit weiter runter.
Mfg ReDoX

Luckie 22. Apr 2005 12:31

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Timer1: TTimer;
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    StartTime: Cardinal;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Dec(StartTime);
  Edit1.Text := IntToStr(StartTime);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  StartTime := 20;
  Timer1.Interval := 6000;
end;
Und könntest du uns allen mal einen Gefallen tun und etwas mehr auf deine Rechtschreibung achten? das ist ja absolut grausam, was du da fabrizierst.

MisterX 22. Apr 2005 12:32

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
mom muss in c++ umschreiben damit das geht ich fersuche mich zu beeilen

alcaeus 22. Apr 2005 12:34

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Bitte, bitte, bitte, tu uns allen einen Gefallen: schreib endlich in korrektem Deutsch (das heisst richtige Rechtschreibung, korrekte Zeichensetzung). Das schaffe sogar ich als Italiener. Da ist es egal ob du bei der Arbeit bist und dich beeilen musst damit dich der Chef nicht erwischt.

Zum Problem: Timer auf die Form, Edit auf die Form. Interval vom Timer auf 60000 setzen, Text vom Edit auf 20.
Im OnTimer schreibst du folgenden Code:
Delphi-Quellcode:
Timer1.Enabled := False;
Edit1.Text := IntToStr(StrToInt(Edit1.Text)-1);
Timer1.Enabled := Edit1.Text > '0';
Sobald im Edit '0' steht, macht der Timer nicht mehr weiter, und du musst dann eben eine andere Aktion ausfuehren lassen.

Greetz
alcaeus

PS: Warum fragst du in einem Delphi-Forum wenn du es dann doch in C++ umschreiben musst? :gruebel:

MisterX 22. Apr 2005 12:36

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Nein nein es mis weiter machen es sol nur runter zählen und dann fon forne anfangen
gut so^^

MisterX 22. Apr 2005 12:37

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
begin
Close;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Interval:=StrtoInt(Edit2.text)*60000;
ShellExecute(Application.MainForm.Handle, nil, PChar( Edit1.Text),nil,nil, SW_SHOWMAXIMIZED);

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=True;
Timer2.Enabled:=True;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled:=False;
Timer2.Enabled:=False;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
winexec('shutdown.exe -s' ,1);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if Sender = Button1 then            
     AboutBox.Caption := 'Info über ' + Application.Title         
else AboutBox.Caption := '';            
AboutBox.ShowModal;

end;

end.

alcaeus 22. Apr 2005 12:40

Re: brauche bishen hilfe damit die zeit im Edit runter leuft
 
Erstens: guck mal ueber deine Posts: da siehst du diesen Button http://www.delphipraxis.net/template.../icon_edit.gif
Klick den an und du musst nicht immer pushen.

Zitat:

Zitat von MisterX
Nein nein es mis weiter machen es sol nur runter zählen und dann fon forne anfangen
gut so^^

es muss also von vorne anfangen sobald es fertig gezaehlt hat? In dem Fall setz den Text des Edits einfach auf 20 sobald du bei 0 ankommst, it's as easy as that.

Greetz
alcaeus


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 Uhr.
Seite 1 von 5  1 23     Letzte »    

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