在delphi中如何把timer的时间显示到edit中

如果按下按钮就开始倒记时,从24小时开始往下减... 如果按下按钮就开始倒记时,从24小时开始往下减 展开
 我来答
Oo木叶之魂oO
2010-09-24 · TA获得超过1036个赞
知道小有建树答主
回答量:319
采纳率:0%
帮助的人:418万
展开全部
将edit1的text初始值设为23:59:59 设为24:00:00会报错的,因为是24小时制
增加一个timer组件,将enabled初始属性设置为false,然后编写ontimer代码如下:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit1.Text:=timetostr(strtotime(edit1.Text)-strtotime('00:00:01'));
end;
编写按钮代码如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
timer1.Enabled:=true;
end;
就OK了
HJ_3000
2010-09-27 · TA获得超过563个赞
知道小有建树答主
回答量:1264
采纳率:78%
帮助的人:55.4万
展开全部
Var
atime: TDateTime;

Procedure TForm1.Timer1Timer(Sender: TObject);
Var
hh, mm, ss, zz: Word;
Begin
Edit1.Text := FormatDateTime('HH:mm:ss', (atime));
atime := (atime - 1 / (24 * 60 * 60) * timer1.Interval / 1000);
DecodeTime(atime, hh, mm, ss, zz);
If (hh = 0) And (mm = 0) And (ss = 0) Then
Begin
Close;
End;
End;

Procedure TForm1.BitBtn1Click(Sender: TObject);
Begin
atime := EncodeTime(23, 59, 59, 997);
Timer1.Enabled := True;
End;

Procedure TForm1.FormCreate(Sender: TObject);
Begin
Timer1.Interval := 1000;
Timer1.Enabled := False;
End;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
//caption := FormatDateTime('c',(Now)); or
caption := FormatDateTime('yyyy-MM-dd HH:mm:ss',(Now));
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式