CImageList CREATE函数ILC_MASK作用

 

 

        设置mask的颜色,可以将位图中该颜色透明,否则会有背景色哦

就是说,你用了ILC_MASK后,可以这样做:


m_ImageList.Create(15,15,ILC_COLOR24|ILC_MASK,3,2);
CBitmap bmp1;
bmp1.LoadBitmap(IDB_COMOFF);
m_ImageList.Add(&bmp1,RGB(255,255,255));

 


看到最后一行Add函数了吗?最后一个参数就是指透明的颜色,表示显示时需要将图片IDB_COMOFF的所有白色透明掉。否则就会有白色底的。
每个图片都是长方形的,你的word图标整个长方形区域都作为有效内容了,自然没有透明的必要。但是,很多图标只是长方形中的某一部分是有意义的,其它都是背景色。将背景色透明是最好的显示效果。因此这个ILC_MASK就帮助你实现它。否则即使Add时指定了透明色也不起作用。

 

 

 

 

参考资料:

http://topic.csdn.net/u/20080403/07/36a6466a-ab5a-4e90-9fef-671dbc3cd8f5.html

你可能感兴趣的:(CImageList CREATE函数ILC_MASK作用)