怎样取得当前日期——>'2003-05-31',并往前推算出50天的日期?得到50天前的日期。
还有‘2003-01-08’怎样——————>'2003-1-8'分数不够再加。

解决方案 »

  1.   

    var
      t: TDateTime;
    begin
      t := StrToDate('2003-05-31');
      t := t - 50;
    end;
      

  2.   

    取得当前日期:
    var temp:Tdatetime;temp:=NOW;
    得到前50天
    temp:=NOW-50;‘2003-01-08’怎样——————>'2003-1-8'
    var s:string;
    begin
    s:=FormatDateTime('yyyy-m-d',now);
    showmessage(s);
    end;
      

  3.   

    给你个简单的函数:
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
        function getAfterDate:TDate; 
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}function TForm1.getAfterDate: TDate; /// 实现函数
    begin
      Result := now() - 50;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      showmessage(DateToStr(getAfterDate)); ///调用函数
    end;end.
      

  4.   

    在窗体中添加一个按钮,写这么一句就可以了
    showmessage(datetostr((strtodate(formatdatetime('yyyy-mm-dd',date))-50)));
    2003-01-08’——————>'2003-1-8'写一句
    strtodate(formatdatetime('yyyy-m-d',strtodate('2003-01-08'))
    就可以了
      

  5.   

    如果你用的是sqlserver数据库的话,象2003-01-08自动变为2003-1-8。
      

  6.   

    var
    d:TDateTime;
    begin
    d:=Date-50;  //Date系统自带函数
    Edit1.Text:=DateToStr(d);
    end;最简短的程序,结贴吧!
    哈哈
      

  7.   

    var
    d,d1:TDateTime;begin
    d:=formatDatetime('YYYY-MM-DD',now);
    d1:=d-50;
    Edit1.Text:=DateToStr(d);
    end;
      

  8.   

    var
    d:TDatetime;
    begin
    d:=now()-50;
    end;