QML ListView多选

问题描述 投票:3回答:4

如何在QML ListView中选择一些元素并将其索引发送到C ++代码?

c++ qt listview qml multi-select
4个回答
2
投票

我很确定没有办法使QML ListView可以多选。 Qt声明式专注于触摸屏的使用,在纯触摸UI中没有有意义的多选方法。


5
投票

执行类似的操作:如果单击了元素,则将其属性设置为选定(或调用它),并在委托中设置为:如果selected为true,则应采用不同的格式。加上将其添加到一些列表中,以对其进行处理。


1
投票

您可能会尝试获取ListItem的数据,并在单击时将其存储到数组中,而在单击时会从列表中删除ListItem的数据。可能是简单的锻炼,而不是创建类似项目的复选框列表。


0
投票

我遇到了同样的问题,我发现实现它的最佳方法是为listview创建一个新角色。假设它是名字并且被选中或未被选中。您需要同时使用两者,因为如果滚动,这将更改项目并且不会被检测为单击。在这两种情况下,都可以将选定的角色更改为true,或者根据需要进行调整,可能是因为您不需要滚动选择

onCurrentIndexChanged:
{
mListModel.append({"firstName": newEntry,"selected":true})
}

onClicked:
{
mListModel.append({"firstName": newEntry,"selected":true})
}

然后您可以在修饰符中使用突出显示,这将根据所选状态更改颜色。

© www.soinside.com 2019 - 2024. All rights reserved.