procedure TForm1.Timer1Timer(Sender: TObject);
 var
    I:integer;
    bitmap1:Tbitmap;
    name:Pchar;
  begin
     bitmap1:=Tbitmap.Create;
     I:=(I mod 6)+1;
     strPcopy(name, 'bitmap'+inttoStr(I+1));
     bitmap1.Handle:=loadBitmap(Hinstance,name);
     Image1.Canvas.Draw(0,0,bitmap1);
end;
这个程序段如何让i自动增加?还有这里的警告提示是
  name might not  have been initialized
这又是什么原因

解决方案 »

  1.   

    bitmap1:=Tbitmap.Create;
         I:=(I mod 6)+1;   //I没有赋值
         strPcopy(name, 'bitmap'+inttoStr(I+1));
         bitmap1.Handle:=loadBitmap(Hinstance,name); //name没有赋值
         Image1.Canvas.Draw(0,0,bitmap1);
      

  2.   

    同意yzykjh(FishMan) 
    有问题请发信息到我的E-mail:[email protected]
      

  3.   


     var
        I:integer;<------------把I设为全局变量,在Form的OnCreate事件中赋初值0或1!
        bitmap1:Tbitmap;
        name:Pchar;
      begin
         bitmap1:=Tbitmap.Create;
         I:=(I mod 6)+1;
         strPcopy(name, 'bitmap'+inttoStr(I+1));
         bitmap1.Handle:=loadBitmap(Hinstance,name);
         Image1.Canvas.Draw(0,0,bitmap1);
    end;
      

  4.   

    I和name 都需要初始化一下子
      

  5.   

    I需要设置为全局,并且要赋初值。不然,当事件执行完一次后,I就释放掉了,
    第二次进入函数体,I又是没有初始值。
      

  6.   

    其实。。我的i就是放在全局变量里定义的啊。。
    to: zouwenyan()
      如何初始化name ??
    而且进行 初始化i也没有用的,我都试过了