dDate是当前日期,怎么样可以算60天前的日期?谢谢!

解决方案 »

  1.   

    implementation
    uses DateUtils;//引用它
    {$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    var
      DT : TDate;
    begin
      DT := IncDay(Now, -60);//这就是
      ShowMessage(DateToStr(DT));
    end;
      

  2.   

    Now是当前日期时间,把它换成你的当前日期。打得急,忘记按你提供的写。
      

  3.   

    TO : zzzzzllllll()二楼也是正解的。看一下TDate和TDateTime的类型定义就可知道:  TDateTime = type Double;只不过最好引导楼主用函数。DateUtils单元里有许多的日期时间函数。
      

  4.   

    谢谢楼上各位高手! 再问一下,为什么我引用DateUtils时说找不到?
      

  5.   

    找不到,是因为你的Delphi默认设置被你无意中改变了。DateUtils.pas在Program Files\Borland\Delphi6\Source\Rtl\Common目录中。你可以这样:Project--> Options-->Directories-->SearchPath在这里添加上面说的那个目录或者这样:直接把DateUtils.pas复制到你的工程目录下。
      

  6.   

    delphi里时间日期的理解:
    1.可以使用delphi为你提供的函数,在ide里面输入随便一个此类函数如 now,按f1帮助,点左上的此类函数的单元集合可以显示全部,有耐心的话自己慢慢看。
    2.delphi里的时间为double类型,*.****;整数表示从某一年(忘记了)的1月1日0时到现在的天数差异,小时表示今天0时后过去的毫秒吧。记不清了,大概吧,嘿嘿。
    不过知道小数和整数就差不多了,剩下的就是加减法运算了。
      

  7.   

    没找到dateutils单元,可能楼主DELPHI版本比较旧吧,
    其实incday函数非常简单,就是
    newyj(吴刚vs西西弗)说的那样直接减就是了.function IncDay(const AValue: TDateTime;
      const ANumberOfDays: Integer): TDateTime;
    begin
      Result := AValue + ANumberOfDays;
    end;