现在要做一个动画图标,我用资源编辑器导入了4个位图,它们在resources.h的定义为
#define IDB_BITMAP1                     130
#define IDB_BITMAP2                     131
#define IDB_BITMAP3                     132
#define IDB_BITMAP4                     133
现在要用CImageList做个图象列表
它的creat()函数的第一个参数:int uID是上面的IDB_BITMAP1吗?我该怎么写呢?

解决方案 »

  1.   

    nBitmapIDResource IDs of the bitmap to be associated with the image list
    你应该做成一块完整的位图,ImageList会自动根据创建时指定的宽高切割之。
      

  2.   

    我看到一篇相关文章有这样说:
    打开“Import Resource”对话框,在文件列表框中选择要插入的位图文件,单击“Improt”按钮,插入选定的位图,然后将
    位图的ID值修改为需要的值“IDB_ANIM_IMGLIST”。
    文章中代码这样写:
    .....
    m_animIcon.SetImageList(IDB_ANIM_IMGLIST,4,RGB(0,0,0));
    .....
    那个参数是怎么回事啊?不用添加就直接引入了4个位图?
      

  3.   

    m_ImgList.Create(48, 48, ILC_COLOR8 | ILC_MASK, 0, 0);
    CBitmap bitmap;
    bitmap.LoadBitmap(IDB_BITMAP1);
    m_ImgList.Add(&bitmap, RGB(255, 255, 255));
    bitmap.DeleteObject();
    bitmap.LoadBitmap(IDB_BITMAP2);
    m_ImgList.Add(&bitmap, RGB(255, 255, 255));
    bitmap.DeleteObject();
    .....