LVITEM lvi; lvi.mask=LVIF_TEXT|LVIF_PARAM|LVIF_IMAGE; // fill list lvi.iSubItem=0;// name lvi.iItem=current; //lparam will be used when sortitems ! lvi.lParam=current; //get filename lvi.pszText=pfinddata->name;// original name lvi.cchTextMax=strlen(pfinddata->name)+1;//MAX_PATH;HICON hIcon; hIcon=Imagelist.ExtractIcon(iFILE); lvi.iImage=ImagelistList.Add(hIcon);
CImageList m_Imagelist; //要显示的小图片List2、在CPP中创建ListCtrl //在这之前在你的工程中多添加几个图标文件
m_Imagelist.Create(22,22,ILC_COLOR32,2,1);
HICON hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()->LoadIcon(IDI_ICON2);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()->LoadIcon(IDI_ICON3);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()->LoadIcon(IDI_ICON4);
m_Imagelist.Add(hIcon); //下面是创建ListCtrl
m_wndList.Create(WS_CHILD | WS_BORDER | WS_VISIBLE | LVS_REPORT,rect, this, ID_LIST_MYCTRL);
m_wndList.ModifyStyle(0,LVS_REPORT | LVS_SHOWSELALWAYS);
m_wndList.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT|LVS_EX_FLATSB);
m_wndList.SetImageList(&m_PackImagelist, LVSIL_SMALL);
m_wndList.InsertColumn(0,"列名1",LVCFMT_IMAGE | LVCFMT_LEFT, 40);
m_wndList.InsertColumn(1, "列名2", LVCFMT_LEFT, 80);
m_wndList.InsertColumn(2, "列名3", LVCFMT_LEFT, 70); //然后是添加item的代码
int nItem = m_wndList.InsertItem(0, "", 0);//这个0是显示第一个图片
wndList.SetItemText(nItem, 1, "abc"); nItem = m_wndList.InsertItem(0, "", 1);//这个1是显示第二个图片
wndList.SetItemText(nItem, 1, "uuuuu");
CImageList m_Imagelist; //要显示的小图片List 2、在CPP中创建ListCtrl //在这之前在你的工程中多添加几个图标文件
m_Imagelist.Create(22,22,ILC_COLOR32,2,1);
HICON hIcon = AfxGetApp()-> LoadIcon(IDI_ICON1);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()-> LoadIcon(IDI_ICON2);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()-> LoadIcon(IDI_ICON3);
m_Imagelist.Add(hIcon);
hIcon = AfxGetApp()-> LoadIcon(IDI_ICON4);
m_Imagelist.Add(hIcon); //下面是创建ListCtrl
m_wndList.Create(WS_CHILD | WS_BORDER | WS_VISIBLE | LVS_REPORT,rect, this, ID_LIST_MYCTRL);
m_wndList.ModifyStyle(0,LVS_REPORT | LVS_SHOWSELALWAYS);
m_wndList.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT|LVS_EX_FLATSB);
m_wndList.SetImageList(&m_PackImagelist, LVSIL_SMALL);
m_wndList.InsertColumn(0, "列名1 ",LVCFMT_IMAGE | LVCFMT_LEFT, 40);
m_wndList.InsertColumn(1, "列名2 ", LVCFMT_LEFT, 80);
m_wndList.InsertColumn(2, "列名3 ", LVCFMT_LEFT, 70); //然后是添加item的代码
int nItem = m_wndList.InsertItem(0, " ", 0);//这个0是显示第一个图片
wndList.SetItemText(nItem, 1, "abc "); nItem = m_wndList.InsertItem(0, " ", 1);//这个1是显示第二个图片
wndList.SetItemText(nItem, 1, "uuuuu ");
lvi.mask=LVIF_TEXT|LVIF_PARAM|LVIF_IMAGE;
// fill list
lvi.iSubItem=0;// name
lvi.iItem=current;
//lparam will be used when sortitems !
lvi.lParam=current;
//get filename
lvi.pszText=pfinddata->name;// original name
lvi.cchTextMax=strlen(pfinddata->name)+1;//MAX_PATH;HICON hIcon;
hIcon=Imagelist.ExtractIcon(iFILE);
lvi.iImage=ImagelistList.Add(hIcon);
IDI_ICON1--IDI_ICON4都是对应的图标资源的ID
CBitmap bitmap;
VERIFY(bitmap.LoadBitmap(IDB_BITMAP2));
m_Imagelist.Create(IDB_BITMAP2,16,1,0);
m_Imagelist.Add(&bitmap,(COLORREF)0xFFFFF);
m_ListCtrl.SetImageList(&m_Imagelist,LVSIL_SMALL); 这样画出来了,可是就是图片太大了,怎么调成和格子一样大啊?
这里的16,16就是图片的宽、高