请问imagelist怎么用? 我在dialog上用list ctrl做图像列表,在classwizard里面指定为控件m_list可是m_list没有add啊!无法把icon加上去,请问为什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CImageList mimg; HICON hIcon; mimg.Create(32,32,ILC_COLOR8,7,0); hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_NORMAL)); mimg.Add(hIcon); DeleteObject(hIcon); hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_ERROR)); mimg.Add(hIcon); DeleteObject(hIcon); hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_INSTALL)); mimg.Add(hIcon); DeleteObject(hIcon); GetListCtrl().SetImageList(&mimg,LVSIL_NORMAL); GetListCtrl().SetImageList(&mimg,LVSIL_SMALL); // LVSIL_SMALL 和 LVSIL_NORMAL 是你的LISTCTRL 在不同视图显示不同的图表。 请问,不能在dialog里面,用那个list控件做为imagelist吗?一定需要手动的写它的create吗? 请问我的imagelist为什么不能把图标显示出来? 没有看明白吗? 你的m_list控件 和 我的GetListCtrl() 是同一个性质的(我的是用 CListView 派生的子类) 。想在 m_listctrl 中显示图表要有一下几个步骤:1 把想要显示的图表 添加到 一个 CImageList 的变量中去。2 把CImageList的变量 在添加到 m_listctrl 中。参考上面的程序! 我的图标现实不出来,请问为什么?我在一个按钮写这么写的: CImageList simg,limg; /*initialize the image list*/ simg.Create(16,16,FALSE,1,0); HICON hIcon = ::LoadIcon(AfxGetResourceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME)); simg.Add(hIcon); DeleteObject(hIcon); m_listView.SetImageList(&simg,LVSIL_SMALL); 然后添加一个项 LV_ITEM lvItem; lvItem.mask = LVIF_TEXT|LVIF_IMAGE|LVIF_STATE; lvItem.state = 0; lvItem.stateMask = 0; lvItem.iImage = 1; lvItem.iItem = 1; lvItem.iSubItem = 0; lvItem.pszText = "item1"; m_listView.InsertItem(&lvItem); m_listView.SetItemText(i,1,"Sub Item 0.1"); m_listView.SetItemText(i,2,"Sub Item 0.2");现在能显示出来item1,但是没有图标,请问为什么? 你的listview是什么样式的?大图标?列表?.. 什么模式? DEBUG or RELEASE ? 切换一下试试看! 按照你的代码,应该将lvItem.iImage = 1;改为lvItem.iImage = 0;因为你只是添加了一个图标,而图象列表的索引号从零开始 呵呵,谢谢,已经能显示出图标了请问如何能将listview的上下滚动改成左右滚动? 我读入一个位图,可以在picture控建立显示,为什么不能在imagelist中显示出来啊!? 串口通讯 c++在函数里定义的局部变量是什么时候分配内存空间的啊? 谁知道MFC中如何实现图片剪切功能 插件问题 你们遇到过类似问题么? 【新手】VC6 如何简单地读取和写入文件。如:读写 CString 到一个 txt 文件。 自己制作安装程序 请会用ado+sql server存储过程的高手帮忙,我不会用存储过程!! 在edit中如何能输入A让它显示的是B??? 各位高手帮帮小弟 如何解决USB插拔时系统多次发出WM_DEVICECHANGE的问题!急阿~! 江湖告急:如何复制指针对象?
HICON hIcon;
mimg.Create(32,32,ILC_COLOR8,7,0);
hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_NORMAL));
mimg.Add(hIcon);
DeleteObject(hIcon); hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_ERROR));
mimg.Add(hIcon);
DeleteObject(hIcon); hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_VWI_INSTALL));
mimg.Add(hIcon);
DeleteObject(hIcon); GetListCtrl().SetImageList(&mimg,LVSIL_NORMAL);
GetListCtrl().SetImageList(&mimg,LVSIL_SMALL);
// LVSIL_SMALL 和 LVSIL_NORMAL 是你的LISTCTRL 在不同视图显示不同的图表。
一定需要手动的写它的create吗?
1 把想要显示的图表 添加到 一个 CImageList 的变量中去。
2 把CImageList的变量 在添加到 m_listctrl 中。参考上面的程序!
我在一个按钮写这么写的:
CImageList simg,limg; /*initialize the image list*/
simg.Create(16,16,FALSE,1,0);
HICON hIcon = ::LoadIcon(AfxGetResourceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME));
simg.Add(hIcon);
DeleteObject(hIcon);
m_listView.SetImageList(&simg,LVSIL_SMALL);
然后添加一个项
LV_ITEM lvItem;
lvItem.mask = LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
lvItem.state = 0;
lvItem.stateMask = 0;
lvItem.iImage = 1;
lvItem.iItem = 1;
lvItem.iSubItem = 0;
lvItem.pszText = "item1";
m_listView.InsertItem(&lvItem);
m_listView.SetItemText(i,1,"Sub Item 0.1");
m_listView.SetItemText(i,2,"Sub Item 0.2");
现在能显示出来item1,但是没有图标,请问为什么?
请问如何能将listview的上下滚动改成左右滚动?