procedure TForm1.Button4Click(Sender: TObject);
begin
timer3.Enabled:=true;
end;
procedure TForm1.Timer3Timer(Sender: TObject);
var i:integer;
begin
  timer3.Interval:=1000;
  for i:=1 to 5 do
  image2.Picture.LoadFromFile('bmp/f2'+inttostr(i)+'.ico');
  timer3.Enabled:=false;
  button4.Click;
end;--------------
不能实现5张图片逐一显示,什么原因?

解决方案 »

  1.   

    當然不行了﹐timer組件本來就是循環﹐你又來一次 for循環
    以下修改供參考,i:integer//全局變量
    procedure TForm1.Button4Click(Sender: TObject); 
    begin 
      self.DoubleBuffered := true ;
      i:= 1 ;
      timer3.Interval:=1000; 
      timer3.Enabled:=true; 
    end; procedure TForm1.Timer3Timer(Sender: TObject); 
    begin 
      image2.Picture.LoadFromFile('bmp/f2'+inttostr(i)+'.ico'); 
      i := i + 1 ;
      if i = 6 then
      begin
        i := 1 ;
      end;
    end; 
      

  2.   

    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
     inc(i);
     image1.Picture.LoadFromFile('F:\stefanie\'+inttostr(i)+'.jpg');
     if i>=5 then
     timer1.Enabled:=false;
    end;
    procedure TForm1.Button1Click(Sender: TObject);
    begin
     timer1.Enabled:=true;
    end;