【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);
}
相关推荐
刃神太酷啦25 分钟前
数据结构(蓝桥杯常考点)
数据结构·c++·蓝桥杯c++组
17´35 分钟前
Qt从入门到入土(八) -打包Qt程序
开发语言·c++·qt
誓约酱1 小时前
(每日一题) 力扣 860 柠檬水找零
linux·c语言·c++·算法·leetcode·职场和发展
学编程的小程1 小时前
无公网IP也能远程控制Windows:Linux rdesktop内网穿透实战
linux·windows·tcp/ip
城西往事2 小时前
DeepSeek 解释C语言函数memset
c++
AC在学习!2 小时前
重生之在Windows上安装虚拟机+Centos7
windows·虚拟机·centos7·vw ware
孞㐑¥2 小时前
C++vector类
开发语言·c++·经验分享·笔记
chenyuhao20243 小时前
非常重要的动态内存错误和柔性数组1
c语言·c++·算法·柔性数组
九思x3 小时前
Node.js和Vue CLI 安装指南(Windows 系统)
前端·vue.js·windows
坚定学代码4 小时前
Qt C++ 实际开发中宏编译的运用
c++·qt