zoukankan      html  css  js  c++  java
  • 小心SecondsBetween有坑

    看下面的代码,求两个时间间隔的秒数:

    procedure TForm2.FormCreate(Sender: TObject);
    begin
      d1:=Now;
    end;
    
    procedure TForm2.Timer1Timer(Sender: TObject);
    var
      i:Integer;
      s:string;
      s1,s2:string;
    begin
    //
      d2:=Now;
      i:=SecondsBetween(d2,d1);
      // i:= Round(MilliSecondsBetween(d2, d1)/1000);
      s1:=FormatDateTime('hh:mm:ss',d1);
      s2:=FormatDateTime('hh:mm:ss',d2);
      Memo1.Lines.Add(Format('%s-%s=%d',[s2,s1,i]));
    
    end;

    这是运行结果:

     应该是1、2、3、4...

    改成下面这样,出坑:

    procedure TForm2.FormCreate(Sender: TObject);
    begin
      d1:=Now;
    end;
    
    procedure TForm2.Timer1Timer(Sender: TObject);
    var
      i:Integer;
      s:string;
      s1,s2:string;
    begin
    
      d2:=Now;
      //i:=SecondsBetween(d2,d1);
      i:= Round(MilliSecondsBetween(d2, d1)/1000);
      s1:=FormatDateTime('hh:mm:ss',d1);
      s2:=FormatDateTime('hh:mm:ss',d2);
      Memo1.Lines.Add(Format('%s-%s=%d',[s2,s1,i]));
    
    end;

    运行结果正常了!

     开发环境: Delphi 10.4.2

  • 相关阅读:
    IOS照相
    起学习iOS开发专用词汇
    django[post与get测试]
    起名字好难啊!(初识Django)
    MTV模型
    Django安装以及介绍
    数据库操作
    数据库其它操作
    数据库经典习题,
    数据库基本操作
  • 原文地址:https://www.cnblogs.com/kinglandsoft/p/14547951.html
Copyright © 2011-2022 走看看