var
StartTime: TDateTime;
EndTime: TDateTime;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
StartTime := Now;
label1.Caption := FormatDateTime('yyyy.mm.dd-hh:nn:ss',StartTime);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
EndTime := Now;
label2.Caption := FormatDateTime('yyyy.mm.dd-hh:nn:ss',EndTime);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
label3.Caption := FormatDateTime('yyyy.mm.dd-hh:nn:ss',EndTime-StartTime);
end;
이런식으로 하면
label1 -> 2003.12.09-11:23:32
label2 -> 2003.12.09-11:23:35
label3 -> 1899.12.30-00:00:03
이러한 형태로 나옵니다...
기존의 일정 시간을 TDateTime 형 변수에 저장을 해두고 현재의 시간차를 구해서 저장을 할려고 합니다...시간 간격이 십초가 될 수도 있고, 하루가 넘어 갈수도 있습니다....
표시는 시분초로 디스플레이를 할건데, 좀 정확히 어떻게 해야 할지 헛갈리네요....^^;
조언 좀.......
참 어렵게 하시네요
함수를 바꾸어서 해보시지요
procedure TTensForm.DataInsert;
var
YY,MM,DD,Hour,Min,Sec,MSec: Word;
begin
DecodeDate(Date,YY,MM,DD);
Tmp_Date := MainForm.IntToStr(YY) + '/' +
MainForm.IntToStr(MM) + '/' +
MainForm.IntToStr(DD);
DecodeTime(Time, Hour, Min, Sec, MSec);
Tmp_Time := MainForm.IntToStr(Hour) + ':' +
MainForm.IntToStr(Min) + ':' +
MainForm.IntToStr(Sec);
end
년월일을 감안하여 처리해야 문제가 생기지 않지요....
년월일을 전부 초단위로 변환하여 사용하면 간단히 해결됨....