var    
    Days:Double;  
begin  
    Days  :=  StrToDate('2001-2-02')-StrToDate('1999-12-25');  
end;

解决方案 »

  1.   

    no.不同意 my_first(海浪)。
    要是涉及数据库可以用数据库函数操作。在D5中就我知道的方式很麻烦。
      

  2.   

    time2-time1 就行了,整数部分是天,小数部分是时分秒
      

  3.   

    看看我的代碼:
        hours:=StrtoDateTime(timeon)-StrToDateTime(Data1on);
                        Query3.FieldbyName('latedutytime').AsFloat:=StrToFloat(format('%10.6f',[hours*24]));
      

  4.   

    (int(datetime1)+frac(hourtime1))-(int(datetime2)+frac(hourtime2))
      

  5.   

    TDateTime 的本质是 Float,
    你可以 try 一 try:
    var
      aDate : TDatetime;
    begin
      aDate := 22.25;
      ShowMessage(DateTimeToStr(aDate));
    end;
      

  6.   

    在直接运算前,如果已经知道的数据类型不是TDateTime类型则
    可以用Encode将年月日编码成TDateTime类型再计算。
      

  7.   

    DateTimePicker1.Date := DateTimePicker2.Date + Trunc(0000-00-07);
      

  8.   

    var
         time1,time2:Tdatatime;
    time1:=time;
    //我这样time1的值为一个0—1的小数,并每次的值都一样,为什么
      

  9.   

    很笨的时候,我曾经用拷贝字符串的方法分别得到时间的分,秒,时。
    有些时候用Ttimer就可以实现某些功能。