【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);
}
相关推荐
别动哪条鱼1 天前
MP4转AAC转换器C++
c++·ffmpeg·音视频·aac
2301_807997381 天前
代码随想录-day47
数据结构·c++·算法·leetcode
李日灐1 天前
手搓简单 string 库:了解C++ 字符串底层
开发语言·c++
Elias不吃糖1 天前
LeetCode每日一练(3)
c++·算法·leetcode
小龙报1 天前
《算法通关指南数据结构和算法篇(2)--- 链表专题》
c语言·数据结构·c++·算法·链表·学习方法·visual studio
mjhcsp1 天前
C++ 动态规划(Dynamic Programming)详解:从理论到实战
c++·动态规划·1024程序员节
随意起个昵称1 天前
【二分】洛谷P2920,P2985做题小记
c++·算法
望眼欲穿的程序猿1 天前
Win系统Vscode+CoNan+Cmake实现调试与构建
c语言·c++·后端
lzh200409191 天前
【C++STL】List详解
开发语言·c++
luoyayun3611 天前
Qt/C++ 线程池TaskPool与 Worker 框架实践
c++·qt·线程池·taskpool