15,979
社区成员
发帖
与我相关
我的任务
分享
DWORD dwStyle = m_listctrl.GetExtendedStyle();
m_listctrl.SetExtendedStyle(dwStyle | LVS_EX_FULLROWSELECT | LVS_EX_BORDERSELECT | LVS_EX_SUBITEMIMAGES);
int nIndex = m_listctrl.InsertColumn(0, _T("ICon"), LVCFMT_LEFT, 50
nIndex = m_listctrl.InsertColumn(1, _T("Job"), LVCFMT_LEFT, 200);
nIndex = m_listctrl.InsertColumn(2, _T("ICon"), LVCFMT_LEFT, 50);
LVITEM lvi;
memset(&lvi, 0, sizeof(lvi));
//The first column used display an icon
lvi.mask = LVIF_IMAGE;
lvi.iItem = 0;
lvi.iImage = I_IMAGECALLBACK;
int nItem = m_listctrl.InsertItem(&lvi);
//The second column used for display an icon and a label
memset(&lvi, 0, sizeof(lvi));
lvi.mask = LVIF_IMAGE | LVIF_TEXT;
lvi.iItem = nItem;
lvi.iImage = I_IMAGECALLBACK;
lvi.iSubItem = 1;
m_listctrl.SetItem(&lvi);
//The third column used for display an icon
memset(&lvi, 0, sizeof(lvi));
lvi.mask = LVIF_IMAGE ;
lvi.iItem = nItem;
lvi.iImage = I_IMAGECALLBACK;
lvi.iSubItem = 2;
m_listctrl.SetItem(&lvi);
void CAboutDlg::OnLvnGetdispinfoList(NMHDR *pNMHDR, LRESULT *pResult)
{
NMLVDISPINFO *pDispInfo = reinterpret_cast<NMLVDISPINFO*>(pNMHDR);
*pResult = 0;
if (pDispInfo->item.mask & TVIF_SELECTEDIMAGE
|| pDispInfo->item.mask & TVIF_IMAGE)
{
int nImage = m_BFImageList.Add(::AfxGetApp()->LoadIcon(IDR_MAINFRAME));
pDispInfo->item.iImage = nImage;
if(pDispInfo->item.mask & TVIF_TEXT)
{
if(pDispInfo->item.iSubItem == 1)
m_listctrl.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem, _T("aaa"));
}
}
else if (pDispInfo->item.mask & TVIF_TEXT)
{
m_listctrl.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem, _T("aaa"));
}
// TODO: Add your control notification handler code here
*pResult = 0;
}