Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

Может кто подскажет как произвести обратный отсчет времени   Найти похожие ветки 

 
Сергей И   (2006-04-20 10:58) [0]

Мне необходимо решить следующую зададу:
вводится время обратного отсчета и при его истечении выполняется задуманное действие


 
MBo ©   (2006-04-20 11:01) [1]

TTimer пробовал использовать?


 
Megabyte ©   (2006-04-20 13:11) [2]

Юзай таймер. А если надо отображать обратный отчет - это ж не сложно.


 
Chlavik ©   (2006-04-21 13:31) [3]

по таймеру декриментируеш переменную time--;  ой dec(time, Timer1.interval );


 
inri13666 ©   (2006-04-21 14:05) [4]

вот листинг проги может поймёш
там вообщем количество оставшихся секунд отображается в заголовке окна
а по истечению времени выводиться окно:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Timer1: TTimer;
   Edit1: TEdit;
   Label1: TLabel;
   Button1: TButton;
   procedure FormCreate(Sender: TObject);
   procedure Button1Click(Sender: TObject);
   procedure Timer1Timer(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 sec:integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
sec:=strtoint(edit1.text);
timer1.Enabled:=true ;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
if timer1.Enabled=true
   then timer1.Enabled:=false;
timer1.interval:=1000 //что равно одной секунде
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
timer1.Enabled:=false;
if sec=0
 then
 begin
 showmessage("Интервал истёк")
 end
 Else
 begin
 sec:=sec-1;
 timer1.Enabled:=True;
 caption:=inttostr(sec);
 end;

end;

end.

GOOD Luck :)


 
Anatoly Podgoretsky ©   (2006-04-21 14:15) [5]

Таймер конечно, но только не sec:=sec-1;, а NOW


 
Alarm ©   (2006-04-21 14:22) [6]

Не хотел "высовываться", но у APP очень давно (ну года примерно 3 или более назад) был отличный ответ на этот вопрос. У меня в проектах было другое решение, но его предложением, типа минус Now я был восхищен!!!


 
inri13666 ©   (2006-04-21 14:24) [7]

в смысле ты что именно имешь в виду напиши плиз по конкретней :)


 
unknown ©   (2006-04-21 14:32) [8]

Вот так :
var
 TimeCounter:TDateTime;
....
 TimeCounter:=now;
...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
...
Caption:=FormatDateTime("hh:mm:ss:ms",Now-TimeCounter);
...
end;


 
Anatoly Podgoretsky ©   (2006-04-21 14:45) [9]

EndTime - Now
И далее любое форматирование.
EndTime время окончания отчета, равное время Now + интервал.


 
Alarm ©   (2006-04-21 14:51) [10]

>Anatoly Podgoretsky ©   (21.04.06 14:45) [9]
Спасибо что ответили сами. Мне было как-то не корректно (удобно) приводить Ваше решение



Страницы: 1 вся ветка

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
2-1145367987
jenya_rus
2006-04-18 17:46
2006.05.07
Считывание инфы с файла =)


2-1145331107
Ezorcist
2006-04-18 07:31
2006.05.07
Сверуть все окна!


1-1143366898
Kolan
2006-03-26 13:54
2006.05.07
Как поместить класс в Dll или пакет?


2-1145605287
adim
2006-04-21 11:41
2006.05.07
SQL


2-1145516327
Сергей И
2006-04-20 10:58
2006.05.07
Может кто подскажет как произвести обратный отсчет времени





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский