CListCtrl得Icon选中的高亮状态去掉

山伟 2009-09-09 05:28:37
我在CListCtrl入几个位图,当选择的时候位图会被高亮显示。
但我需要对每个Item进行重绘,每次又得通过选择状态给被选中的Item增加一个背景色。

如果我把选中状态取消,那么背景色就绘不上去了。请问如何不影响选中状态而将被选择的位图上面那层高亮去掉?
...全文
257 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
山伟 2009-09-10
  • 打赏
  • 举报
回复
问题解决。
不通过CImageList给CListCtrl关联,在重绘函数中通过状态绘制背景色,然后通过创建的一个结构体来接收lParam,在这个结构体的成员变量中有一个CBitmap成员用来存储读取的bmp,再将该CBitmap绘制上去就好啦~
虽然各位没帮到我, 但分还是得散。
山伟 2009-09-10
  • 打赏
  • 举报
回复
在线等啊!拜托各位大大~
yiluqingfeng 2009-09-10
  • 打赏
  • 举报
回复
帮顶
山伟 2009-09-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 muzizongheng 的回复:]
SetItemState(iItem, 0, LVIS_SELECTED | LVIS_FOCUSED);
[/Quote]
这个我知道,这个事取消选中状态的。我不能取消选中状态,不然按照选中状态绘背景就没法实现了。

我想知道 有没有什么办法 选中Item,但图片上没有高亮显示?
muzizongheng 2009-09-09
  • 打赏
  • 举报
回复
SetItemState(iItem, 0, LVIS_SELECTED | LVIS_FOCUSED);

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧