MFC-CImagelist图像列表控件
图像列表是一个具有相同大小的图像(可以是不同类型)的集合,其主要用于应用程序中大规模图标的存储。该控件是不可见的,通常与其它如CListBox,CComboBox,CComboBoxEx,CTabCtrl以及CTreeCtrl一起使用,为他们提供图标资源
图象的每个集合中均以0为图象索引基数,可以把这些图标看成是以数组方式存储的,图像列表通常由大图标或位图构成,其中包含位图模式。实际上,所有的在同一个图象列表中的图标都被存储在一个屏幕设备的位图中
CImageList* pImageList = new CImageList(); // 创建一个CImageList类的指针变量 BOOL b=pImageList->Create(32, 32, ILC_COLOR32, 0, 4); // 确定图像规格--必不可少 /* 参数1: int cx 每个图象的尺寸,以像素为单位 参数2:int cy 每个图象的尺寸,以像素为单位 参数3:UINT nFlags 确定创建的图象列表类型。此参数可能为以下值的组合,但只能有一个ILC_COLOR值 ILC_COLOR 如果没有其它ILC_COLOR* 标记被确定,则使用缺省行为。 典型地,缺省为ILC_COLOR4;但对于旧的显示驱动程序,缺省为ILC_COLORDDB ILC_COLOR4 使用4位(16色)设备独立位图(DIB)部分作为图象列表的位图 ILC_COLOR8 使用8位DIB部分。彩色表格使用的颜色与半色调调色板的一样 ILC_COLOR16 使用16位(32/64K色)DIB部分 ILC_COLOR24 使用24位DIB部分 ILC_COLOR32 使用32位DIB部分 ILC_COLORDDB 使用设备独立位图 参数4:int nInitial 图象列表最初包含的图象数 参数5:int nGrow 当系统需要改变列表为新图象准备空间时,每次增加的图象数空间 返回值:如果成功,则返回非零值,否则为0 */ HBITMAP hbmp1 = (HBITMAP)::LoadImage(NULL, _T("D:\\bb\\tubiao\\1.bmp"), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_CREATEDIBSECTION); CBitmap* pBitmap1=new CBitmap; pBitmap1->Attach(hbmp1); //CWND句柄指向win32API句柄 //通过Detach分离 int i= pImageList->Add(pBitmap1,RGB(0,0,0)); //添加外部文件图像 /* 参数1:CBitmap * pbmImage 参数2:COLORREF crMask 透明色 返回值:图像索引号; 失败返回-1 */
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2019-04-29 python-类对象以字典模式操作