已解决
listmodel里增加一个状态信息
model: ListModel{
id: dataItemModel
ListElement{statu:false,number:"ID"}
}
在checkbox里面把checked属性设置成model.statu,然后再点击事件里面轮训 listmodel,使用setProperty函数修改statu的值
CheckBox{
id: numberCheckBox
x: dataItemDelegate.x
width: dataItemDelegate.width/8
display: AbstractButton.IconOnly
checked:model.statu
indicator: Rectangle{
width: 12
height: 12
color: "#b7b7b7"
radius: 2
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.leftMargin: 5
Image {
anchors.verticalCenter: parent.verticalCenter
anchors.horizontalCenter: parent.horizontalCenter
source: numberCheckBox.checked ? "qrc:/images/select.png" : ""
}
}
onClicked:{
if(index === 0){
for(i = 1;i < dataItemView.count;i++){
dataItemModel.setProperty(i,"statu",numberCheckBox.checked)
}
}
}