Форум: "Основная";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
Внизтаймер и обратній отсчет Найти похожие ветки
← →
linox (2006-01-27 12:27) [0]два батона (старт и стоп).
счет должен идти только в минутах (часах) без секунд.
должен быть прямой таймер и обратный. как это реализовать?
← →
ЮЮ © (2006-01-27 12:40) [1]
> как это реализовать?
Написать соответствующие обработсики у батонов и таймера. При возникновении реальных проблем возвратиться сюда
← →
kukuikar © (2006-01-27 13:33) [2]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, DateUtils;
type
TForm1 = class(TForm)
Timer1: TTimer;
Label1: TLabel;
Button1: TButton;
Button2: TButton;
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
nn: TTime;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption := FormatDateTime("ss",time - nn);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
nn := IncMinute(time,1);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := false;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled := true;
end;
end.
← →
han_malign © (2006-01-27 13:54) [3]
> kukuikar ©
лучше так:
.............................................
private
FExpiration: TDateTime;
FStart: TDateTime;
.............................................
procedure TForm1.Timer1Timer(Sender: TObject);
var Elapsed, Remaining: TTime;
begin
Elapsed:= Time - FStart;
Remaining:= FExpiration - Elapsed;
if(Remaining < 0) then begin
Remaining := 0;
ButtonStopClick(self);
end;
Label1.Caption := FormatDateTime("hh:nn",Elapsed)+"/"+FormatDateTime("hh:nn",Remaining);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
FStart:= Time;
FExpiration:= EncodeTime(3, 17, 0, 0);
end;
procedure TForm1.ButtonStartClick(Sender: TObject);
begin
FStart = Time;
Timer1.Enabled := true;
ButtonStart.Caption:= "Reset";
ButtonStop.Enabled:= true;
end;
procedure TForm1.ButtonStopClick(Sender: TObject);
begin
Timer1.Enabled := false;
ButtonStart.Caption:= "Start";
ButtonStop.Enabled:= false;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.032 c