两个日期时间相减,计算在线时长

繁花一梦 2015-11-19 11:46:36
两个日期时间相减,计算登录在线时长,此代码为正解!!!
其中DateTime为当前时间,gdLoginDateTime为系统登录时间
var dtOnlineDateTime: TDateTime;
begin
if DateTimeToStr(gdLoginDateTime) <> '1899-12-30' then
begin
dtOnlineDateTime := DateTime - gdLoginDateTime;
lblOnlineTime.Caption := '在线时长:' + IntToStr(Trunc(dtOnlineDateTime)) + '天'
+ FormatDatetime('H"小时"m"分"s"秒"', Frac(dtOnlineDateTime));
end;
end;
...全文
609 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyhoo163 2015-11-19
  • 打赏
  • 举报
回复
这样,就理好理解了:

procedure TForm1.Button1Click(Sender: TObject);
var subtrahend,DateTimeFirst,DateTimeLast:TDateTime;
begin
DateTimeFirst:=StrToDateTime('2013-11-11 12:23:34');
DateTimeLast:=StrToDateTime('2015-11-11 15:28:39');
subtrahend:=DateTimeLast-DateTimeFirst;
Edit1.Text:= '在线时长:' + IntToStr(Trunc(subtrahend)) + '天'
+ FormatDatetime('H"小时"m"分"s"秒"', Frac(subtrahend));
end;

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧