【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);
}
相关推荐
进击的荆棘6 分钟前
C++起始之路——类和对象(中)
开发语言·c++
oioihoii11 分钟前
现代C++系统编程中类型重解释的内存安全范式
java·c++·安全
dvlinker12 分钟前
如何让C++程序生成dump文件?生成dump文件的方式有哪些?如何使用Windbg分析dump文件?
c++·dump文件·windbg命令·异常处理回调·writedump·windbg版本·windbg分析
小画家~14 分钟前
第三十七:类型断言
开发语言·c++·算法·golang
Hard but lovely26 分钟前
C++ 11--》初始化
开发语言·c++
昇腾CANN30 分钟前
自定义算子开发系列:TilingKey模板化编程介绍
c++·mfc
Bruce_Liuxiaowei31 分钟前
Windows注册表安全浅析:核心键值解析与防护策略
windows·安全·网络安全
oioihoii33 分钟前
在MFC桌面应用中嵌入现代浏览器内核:原理、选型与实践全解析
c++·mfc
木心爱编程33 分钟前
Qt C++ 串口通信+数据可视化:工业设备数据实时采集与界面显示
c++·qt·信息可视化
_OP_CHEN34 分钟前
【从零开始的Qt开发指南】(九)Qt 常用控件之显示类控件(下):ProgressBar 与 CalendarWidget 实战进阶
开发语言·c++·qt·gui·前端开发·图形化界面开发·qt常用控件