CImageList::Add 是 MFC(Microsoft Foundation Classes)中 CImageList 类的一个公共方法,用于向图像列表中添加图像。
int Add(CBitmap* pbmImage, CBitmap* pbmMask = NULL);
int Add(HICON hIcon);
int Add(CImageList* pImageList, int nIndex);
int Add(UINT nBitmapID, COLORREF crMask);
int Add(LPCTSTR lpszBitmapID, COLORREF crMask);
int Add(CImageList& imageList);

这个方法有多个重载形式,可以根据需要选择使用其中之一。

  •  Add(CBitmap* pbmImage, CBitmap* pbmMask = NULL):从位图添加图像,如果提供了掩码位图,则使用掩码。

  •  Add(HICON hIcon):从图标添加图像。

  •  Add(CImageList* pImageList, int nIndex):从另一个图像列表中添加图像。

  •  Add(UINT nBitmapID, COLORREF crMask):从资源中的位图添加图像,可以指定掩码颜色。

  •  Add(LPCTSTR lpszBitmapID, COLORREF crMask):从资源中的位图添加图像,可以指定掩码颜色。

  •  Add(CImageList& imageList):从另一个图像列表添加所有图像。


这些方法返回一个整数,表示新添加图像的索引,如果添加失败,则返回 -1。

示例用法:
CImageList myImageList;

// 假设有一个位图资源 ID 为 IDB_SAMPLE_BITMAP
int bitmapID = IDB_SAMPLE_BITMAP;

// 添加位图到图像列表
int imageIndex = myImageList.Add(bitmapID);

if (imageIndex != -1)
{
    // 添加成功,可以使用 imageIndex 来引用新添加的图像
}
else
{
    // 添加失败
}

上述示例中,Add 方法被用于从资源中的位图添加图像,并返回新添加图像的索引。


转载请注明出处:http://www.zyzy.cn/article/detail/18281/MFC/CImageList