不是LVITEM结构中有iImage成员,是放ImageList中的图片序号的(从0开始),用GetItem取得LVITEM结构,重设一下iImage成员,再SetItem就可以了。
还有一种方法,可以用SetImageList重把ImageList重设为一个包含同样数目的不同图片的ImageList,再刷新就可以了,注意SetImageList返回原来的ImageList的句柄,要自己清除他。
还有一种方法,可以用SetImageList重把ImageList重设为一个包含同样数目的不同图片的ImageList,再刷新就可以了,注意SetImageList返回原来的ImageList的句柄,要自己清除他。
解决方案 »
- 视图分割后遇到点显示问题,求教
- vc9 SP1里面用到了std::auto_ptr,我把代码拷贝到vc10里面就报如下错误?如何解决
- 是否可以在richedit 指定区域加背景颜色?
- MFC 初始对话窗窗口样式 问题
- MultiByteToWideChar 求助!!!!!!!!!!!
- 讨教:如何让Dialog平铺客户区
- 请教一个图像清除的问题?
- 高手,我这声卡怎么了?请进来看看!
- inine函数的定义必须在调用该函数的每个源文件中是可见的,这个可见的是什么意思?
- 如何实现打开当前目录下的 .mdb数据库文件作为数据源?
- 应该怎样实习,(高分求教)
- 找到了Vs.Net Beta2在国内的下载地址,共4CD
m_listctrl.InsertItem( LVIF_TEXT | LVIF_IMAGE, nRow, sItemText, 0, 0, nImage, NULL);
The image can later be changed by calling the SetItem() function. The CListCtrl class does not have a SetImage() function.
m_listctrl.SetItem( 0, 0, LVIF_IMAGE, NULL, nImage, 0, 0, 0 );
To remove the image, use a value of -1 for nImage, else nImage should be a zero based index of the image in the image list.