原来的代码是这样的:BOOL CC424Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_imglist.Create ( 32, 32, ILC_COLOR16 | ILC_MASK, 4, 1 ); m_imglist.Add (HICON(::LoadImage (AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_ICON_1),
IMAGE_ICON, 32, 32, LR_DEFAULTCOLOR )));
m_list.SetImageList ( &m_imglist, LVSIL_SMALL );
m_list.InsertColumn ( 0, _T("Active Icons"), LVCFMT_LEFT, 0, 0 ); m_list.InsertItem ( 0, _T("The first item"), 0 );
m_list.SetColumnWidth ( 0, LVSCW_AUTOSIZE ); m_list.SetExtendedStyle ( LVS_EX_FULLROWSELECT );
return TRUE;
}
现在我想这样修改:
1、新建一个基于CListCtrl的CListCtrlEx类,有关代码如下
void CListCtrlEx::AddItem(short i, char* name, char* text)
{
LVITEM lvi; lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM;
lvi.iItem = GetItemCount();
lvi.iImage = i;
lvi.iSubItem = 0;
lvi.pszText = name;
lvi.cchTextMax = 64;
lvi.lParam = 0;
InsertItem(&lvi); lvi.mask = LVIF_TEXT;
lvi.pszText = text;
lvi.cchTextMax = 32;
lvi.iSubItem = 1;
SetItem(&lvi);
}
2、在CC424Dlg::OnInitDialog()调用CListCtrlEx类的方法:
BOOL CC424Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_imglist.Create ( 32, 32, ILC_COLOR16 | ILC_MASK, 4, 1 ); m_imglist.Add (HICON(::LoadImage (AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_ICON_1),
IMAGE_ICON, 32, 32, LR_DEFAULTCOLOR )));
m_list.SetImageList ( &m_imglist, LVSIL_SMALL );这里不知怎么调用AddItem的方法?
return TRUE;
}[/code]
请高手指点。谢谢!!
{
CDialog::OnInitDialog();
m_imglist.Create ( 32, 32, ILC_COLOR16 | ILC_MASK, 4, 1 ); m_imglist.Add (HICON(::LoadImage (AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_ICON_1),
IMAGE_ICON, 32, 32, LR_DEFAULTCOLOR )));
m_list.SetImageList ( &m_imglist, LVSIL_SMALL );
m_list.InsertColumn ( 0, _T("Active Icons"), LVCFMT_LEFT, 0, 0 ); m_list.InsertItem ( 0, _T("The first item"), 0 );
m_list.SetColumnWidth ( 0, LVSCW_AUTOSIZE ); m_list.SetExtendedStyle ( LVS_EX_FULLROWSELECT );
return TRUE;
}
现在我想这样修改:
1、新建一个基于CListCtrl的CListCtrlEx类,有关代码如下
void CListCtrlEx::AddItem(short i, char* name, char* text)
{
LVITEM lvi; lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM;
lvi.iItem = GetItemCount();
lvi.iImage = i;
lvi.iSubItem = 0;
lvi.pszText = name;
lvi.cchTextMax = 64;
lvi.lParam = 0;
InsertItem(&lvi); lvi.mask = LVIF_TEXT;
lvi.pszText = text;
lvi.cchTextMax = 32;
lvi.iSubItem = 1;
SetItem(&lvi);
}
2、在CC424Dlg::OnInitDialog()调用CListCtrlEx类的方法:
BOOL CC424Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_imglist.Create ( 32, 32, ILC_COLOR16 | ILC_MASK, 4, 1 ); m_imglist.Add (HICON(::LoadImage (AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_ICON_1),
IMAGE_ICON, 32, 32, LR_DEFAULTCOLOR )));
m_list.SetImageList ( &m_imglist, LVSIL_SMALL );这里不知怎么调用AddItem的方法?
return TRUE;
}[/code]
请高手指点。谢谢!!
m_list.AddItem(0, 1, "Row 0, Col 100", ..); m_list.AddItem(0, 2, "1", ..);
m_list.InsertColumn ( 0, _T("Active Icons"), LVCFMT_LEFT,0,0);
是不是因为width定义为0,所以出不来呢?因为我改过后,可以看到报表的数据和图片。
m_list.InsertColumn ( 0, _T("Active Icons"), LVCFMT_LEFT, 0, 0 );
m_list.AddItem(0, "asdf", NULL);
m_list.SetColumnWidth ( 0, LVSCW_AUTOSIZE );