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),这可能会导致插入相同的图片。