【Duilib】 List控件支持多选和获取选择的多条数据

问题

使用Duilib库写的一个UI页面用到了List控件,功能变动想支持选择多行数据。

分析

1、List控件本身支持使用SetMultiSelect接口设置是否多选:

cpp 复制代码
void SetMultiSelect(bool bMultiSel);

2、List控件本身支持使用GetNextSelItem接口获取选中的下一个索引项:

cpp 复制代码
int GetNextSelItem(int nItem) const;

解决

cpp 复制代码
// ...
// 初始化控件时设置支持多选
auto pListUI = static_cast<DuiLib::CListUI*>(m_pm.FindControl(_T("list_data")));
pListUI->SetMultiSelect(true);

// ...
// 获取选择的索引时
int nSel = -1;
int nNextSel = m_pListDataUI->GetNextSelItem(nSel);
while (nNextSel >= 0)
{
	// ...
    nNextSel = m_pListDataUI->GetNextSelItem(nNextSel);
}
相关推荐
tod1136 分钟前
C++核心知识点全解析(四)
开发语言·c++·面试经验
一个人旅程~8 分钟前
《七重时间的织锦》-致初七
windows·经验分享·笔记·微信公众平台
闻缺陷则喜何志丹13 分钟前
【计算几何 CAD】三点画弧、三点画圆是否是三角形的外接圆
c++·计算几何·cad··外接圆·
今儿敲了吗17 分钟前
28| A-B数对
数据结构·c++·笔记·学习·算法
希望之晨1 小时前
c++ 11 学习 函数模板
linux·开发语言·c++
今儿敲了吗1 小时前
27| 魔法封印
数据结构·c++·笔记·学习·算法
今儿敲了吗1 小时前
30| 木材加工
数据结构·c++·笔记·学习·算法
WW_千谷山4_sch1 小时前
MYOJ_7789:(洛谷P3388)【模板】割点(割顶)(tarjan算法)
c++·算法·深度优先·图论
锅包一切1 小时前
PART7 队列
c++·学习·算法·leetcode·力扣·刷题·队列
Fms_Sa1 小时前
设计并实现日期类Date,它至少包含下列特性:
c++·算法