你把b:tbitmap的定义,分配和释放放到外面试一试
并且进入Timer1Timer的时候停掉Timer,出来的时候再打开时钟

解决方案 »

  1.   

    在里面加一条接受消息的语句
    Application.ProcessMessage;
    试一下。
      

  2.   

    如果把tbitmap的定义,分配和释放放到外边立即报错,和移动的错一样
      

  3.   

    procedure TForm1.Timer1Timer(Sender: TObject);
    var
      i:integer;
      b:tbitmap;
      n:pchar;
    begin
      b:=tbitmap.Create;
      n:=AllocMem(100);
      strpcopy(n,'d'+inttostr(i_time));
      b.Handle:=loadbitmap(hinstance,n);
      cenbit.Canvas.Draw(0,0,b);
      i_time:=i_time+1;
      if i_time=5 then
        timer1.Enabled:=false;
      dispose(n);
      b.free
    end;
      

  4.   

    weenyboy(小公子)真是高手,这是为什么啊
      

  5.   

    老大,请学习string与pchar的区别
      

  6.   

    为什么?Pchar是一个字符传指针,需要自己分配内存的,就这么简单。为什么不用string呢?那样你就不需要位内存的分配操心了。
      

  7.   

    weenyboy(小公子)我另外贴个帖子送分吧,反正分多