MFC CImageList序列图的用法

1.如何动态设置CImageList图标大小

CImageList* pImageList = new CImageList();

pImageList->Create(80,80,ILC_COLORDDB,10,1);

//动态改变尺寸的方法如下:

ImageList_SetIconSize(m_dlg->mCImageList.m_hImageList, mThumbWidth, mThumbHeight);

mListCtrl.SetImageList(&mCImageList,  LVSIL_NORMAL);  //重点:必须调用SetImageList重新设置,否则尺寸不生效;

 

2. 如何实现图标+文本的显示

CListCtrl mListCtrl;

 CImageList    mCImageList;

mCImageList.Create(THUMB_W, THUMB_H, ILC_COLOR24, 0, 1);
mListCtrl.SetImageList(&mCImageList, LVSIL_NORMAL);

HBITMAP hbitmap = CreateBitmap(THUMB_W, THUMB_H, 1, 32, pic->data[0]);
pBitmap = new CBitmap();
pBitmap->Attach(hbitmap);

// add bitmap to our image list
mCImageList.Replace(i, pBitmap, NULL);
mListCtrl.InsertItem(i, “文本信息”, i); //设置的文本信息,文本内容会显示在图片下面; i为图片对应的index

//这里要注意,一定要用InsertItem(a,itemName,a);之前的m_list不需要在insert(I,_T(””));更不需要setItemText(item,subItem,Text),这可能会导致插入相同的图片。

 

你可能感兴趣的:(MFC)