列表控件如何实现全选反选功能

paresly 2012-11-19 08:54:46
想添加两个按钮,实现对列表控件的全选和反选,需要怎么处理啊,选中的时候需要高亮显示的那种
...全文
133 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaozhiyong110 2012-11-19
  • 打赏
  • 举报
回复
全选 int n = m_myListCtrl.GetTopIndex(); int nLast = n + m_myListCtrl.GetCountPerPage(); for (; n < nLast; n++) { m_myListCtrl.SetItemState(n, LVIS_SELECTED, LVIS_SELECTED); ASSERT(m_myListCtrl.GetItemState(n, LVIS_SELECTED) == LVIS_SELECTED); }
傻X 2012-11-19
  • 打赏
  • 举报
回复
说两个关键函数

m_list.SetItemState(iSelectItem-1,LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED); //选中
		m_list.SetItemState(iSelectItem,0, LVIS_SELECTED|LVIS_FOCUSED); //取消选中
		m_list.SetSelectionMark(iSelectItem-1);//选中标记


//全选1楼给出了答案,反选用
//GetItemState可以获取每行的状态,加个if语句判断就可以达到效果了

15,979

社区成员

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

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