关于获取当前系统时间的问题,我编好了一段,但是不知如何修改,高手们帮帮忙.最好是完整的:var
curdate,curtime:TdateTime;
curyear,curmonth,curday:word;
curhour,curmin,cursec,curmsec:word;
procedure TForm1.Button1Click(Sender: TObject);begin
curdate:=date();
decodedate(curyear,curmonth,curday);
edit1.Text:=curyear;
edit2.Text:=curmonth;
edit3.Text:=curday;
Button1.Click(Form1);
end;procedure TForm1.Button2Click(Sender: TObject);
begin
curtime:=time();
decodedate(curhour,curmin,cursec);
edit4.Text:=curhour;
edit5.Text:=curmin;
edit6.Text:=cursec;
Button2Click(Form1);
end;end.
curdate,curtime:TdateTime;
curyear,curmonth,curday:word;
curhour,curmin,cursec,curmsec:word;
procedure TForm1.Button1Click(Sender: TObject);begin
curdate:=date();
decodedate(curyear,curmonth,curday);
edit1.Text:=curyear;
edit2.Text:=curmonth;
edit3.Text:=curday;
Button1.Click(Form1);
end;procedure TForm1.Button2Click(Sender: TObject);
begin
curtime:=time();
decodedate(curhour,curmin,cursec);
edit4.Text:=curhour;
edit5.Text:=curmin;
edit6.Text:=cursec;
Button2Click(Form1);
end;end.
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}
var
curdate,curtime:TdateTime;
curyear,curmonth,curday:word;
curhour,curmin,cursec,curmsec:word;procedure TForm1.Button2Click(Sender: TObject);
begin
curtime:=time();
decodetime(curtime,curhour,curmin,cursec,curmsec);
edit4.Text:=inttostr(curhour);
edit5.Text:=inttostr(curmin);
edit6.Text:=inttostr(cursec);
//Button2Click(Form1);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
curdate:=date();
decodedate(curdate,curyear,curmonth,curday);
edit1.Text:=inttostr(curyear);
edit2.Text:=inttostr(curmonth);
edit3.Text:=inttostr(curday);
//Button1.Click(Form1);
end;end.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}
var
curdate,curtime:TdateTime;
curyear,curmonth,curday:word;
curhour,curmin,cursec,curmsec:word;procedure TForm1.Button2Click(Sender: TObject);
begin
curtime:=time();
decodetime(curtime,curhour,curmin,cursec,curmsec);
edit4.Text:=inttostr(curhour);
edit5.Text:=inttostr(curmin);
edit6.Text:=inttostr(cursec);
//Button2Click(Form1);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
curdate:=date();
decodedate(curdate,curyear,curmonth,curday);
edit1.Text:=inttostr(curyear);
edit2.Text:=inttostr(curmonth);
edit3.Text:=inttostr(curday);
//Button1.Click(Form1);
end;end.
返回值包含日期和时间如:2007-12-12 17:33:21
edit1.text := formatdatetime('yyyy-MM-dd hh:mm:ss', now);
返回值包含日期和时间如:2007-12-12 17:33:21
function Now: TDateTime;
function Date: TDateTime;
function Time: TDateTime;
然后显示在界面上可以用FormatDateTime转成你要的形式,用DecodeDateTime/DecodeDate/DecodeTime当然也可以,不过转下来是整型的,而且由于需要变量参数,还要额外定义变量
procedure DecodeDateTime(const AValue: TDateTime; out AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond: Word);
这个递归调用不就变成死循环了,呵呵