有两个imagelist: il1,il2
和一个,toolbar
我用下面方法给toolbar上面的按钮加上了图片
 with toolbar的按钮 do  
     il1.GetBitmap(i,Glyph);
翻过来
我用下面方法从按钮里取出图片到il2里却发生错误,提示‘invalid image size’
with toolbar的按钮 do  
 il2.Add(Glyph,nil);il1,il2是相同的设置,为什么会提示这样的错误呢,如何解决呢

解决方案 »

  1.   

    两个ImageList的Height,Width设为同一值!主要就是Bitmap的大小和il2的必须一致!
      

  2.   

    是相同的,关键是经过了toolbar后就不行了
    我直接用 il1的图片给il2是可以的
      

  3.   

    //可以呀
    procedure TForm1.Button1Click(Sender: TObject);
    var
            bit:TBitmap;
    begin
            try
            bit:=Tbitmap.Create ;
            imagelist1.GetBitmap(0,bit);
            if imagelist2.add(bit,nil)=-1 then
                    showmessage('failure')
            else
                    toolbar2.Images:=imagelist2;
            finally
                    bit.Free;
            end;end;