我有一个带复选框的列表视图。我想在列表视图中获取所选项的值。我怎样才能实现上述目标..?
我发布了以下屏幕截图:
这就是我的尝试:
//列出视图声明及其元素:
ListView {
verticalAlignment: VerticalAlignment.Center
horizontalAlignment: HorizontalAlignment.Center
layout: FlowListLayout {
}
dataModel: grouplistdatamodel
listItemComponents: [
ListItemComponent {
type: "item"
Container {
Container {
layout: StackLayout {
orientation: LayoutOrientation.TopToBottom
}
verticalAlignment: VerticalAlignment.Center
horizontalAlignment: HorizontalAlignment.Center
preferredWidth: 768
Container {
verticalAlignment: VerticalAlignment.Center
layout: StackLayout {
orientation: LayoutOrientation.LeftToRight
}
CheckBox {
verticalAlignment: VerticalAlignment.Center
id:checkboxvalues
text: ListItemData.firstname
onCheckedChanged: {
}
}
}
}
Divider {
horizontalAlignment: HorizontalAlignment.Fill
}
}
}
]
onTriggered: {
_test.showToast(userid);
}
onCreationCompleted: {
group_DataSource.load();
}
}
请帮我解决这个问题。在此先感谢..!
答案 0 :(得分:3)
我不确定你想要做什么,但这里是我如何存储用户检查的所有数据。
在onCheckedChanged
:
ListView {
...
listItemComponents: [
...
onCheckedChanged: {
ListItem.view.checkedDataChanged(ListItemData.firstname, checked);
}
...
]
function checkedDataChanged(data, isChecked) {
controller.checkedDataChanged(data, isChecked);
}
}
...
checkedDataChanged
是列表控制器的C ++类中定义的Q_INVOKABLE
。
然后,您可以在QList
中轻松管理您选择的数据。
希望这有帮助!