for i := 0 to 100 do
  begin
   label4.Caption := '正在备份整箱第'+inttostr(i)+'条...';
   代码段  
   Invalidate;
  end;
我用invalidate,refresh都不行,怎么做?

解决方案 »

  1.   

    application.processmessages
    -------------------------------循环中首先判断有没有消息发送for i := 0 to 100 do
      begin
       application.processmessages
       label4.Caption := '正在备份整箱第'+inttostr(i)+'条...';
       代码段  
       Invalidate;
      end;
      

  2.   

    for i := 0 to 100 do
      begin
       Invalidate;
       label4.Caption := '正在备份整箱第'+inttostr(i)+'条...';
       代码段  
      end;
      

  3.   

    for i := 0 to 100 do
      begin
       label4.Caption := '正在备份整箱第'+inttostr(i)+'条...';
       窗体名.update;       //强制刷新,可以用的!
       Invalidate;
      end;