refer to this sample : http://www.codeproject.com/listctrl/supergrid.asp
LV_ITEM lvi; lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_STATE; lvi.iItem = 0; // The number of line lvi.iSubItem = 1; // The number of col lvi.pszText = "Sub Item01"; lvi.iImage =2; lvi.stateMask = LVIS_STATEIMAGEMASK; lvi.state = INDEXTOSTATEIMAGEMASK(1); ListCtrl.SetItem(&lvi);
lvi.iItem = 0; // The number of line
lvi.iSubItem = 1; // The number of col
lvi.pszText = "Sub Item01";
lvi.iImage =2;
lvi.stateMask = LVIS_STATEIMAGEMASK;
lvi.state = INDEXTOSTATEIMAGEMASK(1);
ListCtrl.SetItem(&lvi);
有关列表项的更多信息,请参阅 Platform SDK 中的列表视图图像列表和项和子项。另请参阅 MFC Reference 中的 CImageList 类和该文章族中的使用 CImageList。若要创建列表控件 (List Control),需要在将新项插入到列表中时提供将要使用的图像列表。下面的示例将说明此过程,其中 m_pImagelist 是 CImageList 类型的指针,m_listctrl 是一个 CListCtrl 数据成员。// create, initialize, and hook up image list
m_pImageList = new CImageList();
ASSERT(m_pImageList != NULL); // serious allocation failure checking
m_pImageList->Create(32, 32, TRUE, 4, 4);
m_pImageList->Add(pApp->LoadIcon(IDI_ICONLIST1));
m_pImageList->Add(pApp->LoadIcon(IDI_ICONLIST2));
m_listctrl.SetImageList(m_pImageList, LVSIL_NORMAL);
但是用SetItem的时候,不知道为什么就不行了!