【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);
}
相关推荐
HAPPY酷5 分钟前
C++ 多线程实战三板斧
java·开发语言·c++·技术美术
fpcc6 分钟前
并行编程实战——CUDA编程的Tile
c++·cuda
聂 可 以17 分钟前
Windows环境Git安装教程(下载Git安装包、安装Git、验证Git是否安装成功)
windows·git
_风华ts2 小时前
C++ 函数封装与绑定
c++·函数指针·函数封装
ShineWinsu2 小时前
对于C++中stack和queue的详细介绍
开发语言·数据结构·c++·面试·stl·queue·stack
L_Aria2 小时前
6421. 【NOIP2019模拟11.11】匹配
c++·算法·动态规划
小锋学长生活大爆炸2 小时前
【教程】PicoClaw:在嵌入式设备上部署OpenClaw
docker·github·教程·工具·openclaw·picoclaw
secondyoung3 小时前
Git使用:Git使用问题及解决方法总结
windows·经验分享·git·vscode·gitee·github·gitcode
智者知已应修善业3 小时前
【PAT乙级真题解惑1012数字分类】2025-3-29
c语言·c++·经验分享·笔记·算法
-To be number.wan4 小时前
算法学习日记 | 双指针
c++·学习·算法