【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);
}
相关推荐
低频电磁之道2 分钟前
C++ 中有符号与无符号类型混用可能导致的问题
开发语言·c++
垆边人似月.7 分钟前
华为题:滑动窗口最大值
数据结构·c++·算法
遇印记11 分钟前
网络安全,数据链路层,物理层
运维·服务器·网络·windows·学习
菩提树下的凡夫25 分钟前
OPenCV4.8与OpenCV5.0的区别
c++·opencv
要练八块腹肌29 分钟前
map和set介绍与使用
c++
白杨尚青40 分钟前
C++入门篇(十七):priority_queue 完整模拟实现——仿函数、区间建堆与指针特化(附完整代码仓库)
开发语言·c++·stl·仿函数
mx_jun1 小时前
Wireshark 蓝牙 HCI 日志分析常用操作速查
windows·microsoft·hci·bt
啦啦啦啦啦zzzz1 小时前
分布式存储----缓存组
linux·服务器·c++·分布式·缓存
艾iYYY1 小时前
思考: C++ 万能引用与完美转发
c++·windows·microsoft
余额瞒着我当琳1 小时前
C++算法学习篇5--二分查找法
c++·学习·算法