【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);
}
相关推荐
汉克老师5 分钟前
GESP2026年9月认证C++一级( 第一部分选择题(8~15题)精讲
c++·gesp·小学生·学c++编程
shimly12345618 分钟前
(undone) 解析 qemu-6.0.0 源码 (4) 添加 niubi board
windows
小小、码农21 分钟前
〖Linux文件系统〗:彻底打通文件 IO 全链路
linux·开发语言·数据结构·c++·系统
東隅已逝,桑榆非晚35 分钟前
priority_queue的介绍和使用
c++·经验分享·笔记·学习
茉莉玫瑰花茶1 小时前
OpenGL [ 纹理 ]
开发语言·c++·opengl
余额瞒着我当琳1 小时前
C++ map 底层与AVL 树
开发语言·c++·算法
All for pursuit.2 小时前
【贪心-2】253.会议室 II
数据结构·c++·算法·leetcode
重生之小比特2 小时前
【C++进阶】异常
开发语言·c++
朝朝辞暮i2 小时前
C++ 第 15 课:指针 * 和地址 &
开发语言·c++
奶茶树2 小时前
【C++】14. C++11新特性【下】
开发语言·c++