
int AddIcon(HICON hIcon)
{
if (!m_pImageList)
{
return -1
}
return m_pImageList->Add(hIcon)
}
1 控件本身,只有第一列可以加图标,可以通过交换两列实现。2 可以,就是利用控件自绘,单元格的内容完全自己画
参考
http://www.codeproject.com/KB/list/lvcustomdraw.aspx
http://www.codeproject.com/KB/list/xlistctrl.aspx
获取窗口的图标HICON之后如何把图标显示在listctrl中? vc悬赏分:30 - 解决时间:2008-4-15 20:00
我在程序中获得了一个窗口的HICON,但是不知道如何把图标显示在listctrl中,怎么办?
问题补充:各位谢谢你们的关注,不过我的问题是这样的,我是通过枚举桌面窗口来获得程序的窗口图标的,所以没有资源ID,那应该如何作呢?
提问者: koko200147 - 举人 四级 最佳答案
HICON myIcon[3]
myIcon[0]=AfxGetApp()->LoadIcon(IDI_ICON1)//注意这里是通过LoadIcon获得HICON
myIcon[1]=AfxGetApp()->LoadIcon(IDI_ICON2)
myIcon[2]=AfxGetApp()->LoadIcon(IDR_MAINFRAME)
myList.Create(32, 32, ILC_COLOR32, 8, 8)
for(int i=0i <3i++)
{
myList.Add(myIcon[i])
}
m_friend_list.SetImageList(&myList, LVSIL_SMALL)
for(i=0i <3i++)
{
LVITEM lvitem
lvitem.mask = LVIF_IMAGE|LVIF_TEXT
lvitem.iItem = i
lvitem.pszText = " "
lvitem.iImage = i
lvitem.iSubItem = 0
m_friend_list.InsertItem(&lvitem)
}
----------------------
只要能获得句柄就能获得ID
----------------------
现在已经能正常显示图标了 改了这句话就行了
((CListCtrl *) lParam)->InsertItem(i,m_strTitle, i)
参考资料:正好我最近写过一个
回答者: 皇家救星1985 - 江湖大侠 八级 4-14 18:58
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)