delphi中如何显示后三天日期?

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:18:16
在delphi中如何将系统日期后三天显示到下拉框?如:今天是2008-5-22,则显示2008-5-22、2008-5-23和2008-5-24………………新手!
我的笨方法:
var
Year,Month,Day:word;

DecodeDate(Date,Year,Month,Day);
combobox2.Clear;
combobox2.Items.Add(IntToStr(Year)+'-'+
IntToStr(Month)+'-'+IntToStr(Day)+'');
combobox2.Items.Add(IntToStr(Year)+'-'+
IntToStr(Month)+'-'+IntToStr(Day+1)+'');
combobox2.Items.Add(IntToStr(Year)+'-'+
IntToStr(Month)+'-'+IntToStr(Day+2)+'');

楼上的,事件信息错了,应当是下拉动作

procedure TForm1.ComboBox1DropDown(Sender: TObject);
var
Day : TDateTime;
DayStr : string;
i : integer;
begin
ComboBox1.Text:='';
ComboBox1.Items.Clear;
Day := Now;
DayStr := FormatDateTime('yyyy-mm-dd',Day);

for i := 0 to 2 do
begin
ComboBox1.Items.Add(DayStr);
Day :=IncDay(Day);
DayStr := FormatDateTime('yyyy-mm-dd',Day);
end;
ComboBox1.ItemIndex:=0;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
stemp:string;
i:integer;
day:Tdatetime;
begin
combobox1.Text:='';
combobox1.Items.Clear;//清空下拉列表框
day:=now; //获取当前日期
for i:=0 to 2 do
begin
stemp:=formatdatetime('yyyy-mm-dd',day);//日期类型转换为字符串
combobox1.Items.Add(stemp);//追加到下拉框
day:=incDay(day); //日期加一天
stemp:=formatdatetime('