【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);
}
相关推荐
All for pursuit.6 小时前
【位运算-1】338.比特位计数
数据结构·c++·算法·leetcode
小师兄吃牛肉6 小时前
C语言中的nullptr有必要吗
c语言·c++·算法
怎么没有名字注册了啊7 小时前
Qt开发:MessageBox怎么调出标题栏那个问号按钮?
windows
WL学习笔记7 小时前
日期类(C++)
开发语言·c++·日期类实现
H.莓飛8 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
李子红了时8 小时前
EncFS MP中文版汉化下载(免费文件加密工具)
windows·安全
辻弋2018 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
会飞的土拨鼠呀8 小时前
Windows 系统关闭虚拟内存文件pagefile.sys
windows
汉克老师9 小时前
GESP2026年9月认证C++八级( 第一部分选择题(1~7题)精讲
c++·gesp·小学生·学c++编程
郝学胜_神的一滴10 小时前
C++ Templates 06:搞懂模板代码的三种组织方式
c++·visual studio