Сначала вроде нормально работало. Однако, когда количество моделей превышало 20, элементы после 20 не проверялись.
Как может нормально работать флажок списка, даже если количество моделей велико?
введите описание изображения здесь
Прямоугольник {id: infoTable width: parent.width - 20 height: 295 anchors.horizontalCenter: parent.horizontalCenter
Rectangle {
id: header
width: parent.width
height: 31
anchors{
top: parent.top
topMargin: 5
horizontalCenter: parent.horizontalCenter
}
Row {
height: parent.height
anchors.left: parent.left
Item {
width: headerModel.get(0).columnWidth
height: parent.height
Label {
text: headerModel.get(0).name
font.family: Theme.nanumSquareBold.name
font.pixelSize: Theme.regularSize
anchors.fill: parent
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
}
}
Item {
width: headerModel.get(1).columnWidth
height: parent.height
ButtonGroup{
id : checkboxGroup
exclusive: false
checkState: headerCheckbox.checkState
}
CheckBox{
id : headerCheckbox
anchors.centerIn: parent
scale: 0.7
checkState: checkboxGroup.checkState
}
}
}
}
Rectangle {
width: parent.width
height: parent.height - 31
anchors{
top: header.bottom
topMargin: 2
horizontalCenter: parent.horizontalCenter
}
ListView {
id: tableView
property int itemHeight: 30
width: parent.width
height: parent.height
headerPositioning: ListView.InlineHeader
boundsMovement: Flickable.StopAtBounds
currentIndex: -1
focus: true
clip: true
model : viewModel.myModel
ListModel {
id: headerModel
ListElement { name: "No"; columnWidth: 30 }
ListElement { name: ""; columnWidth: 35 }
}
delegate: Rectangle {
width: parent.width
height: tableView.itemHeight
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.RightButton | Qt.LeftButton
onClicked: {
if (mouse.button == Qt.RightButton){
tableMouseMenu.popup()
}
}
}
Row {
height: parent.height
Item {
width: headerModel.get(0).columnWidth
height: parent.height
Label {
text: index + 1
font.bold: true
font.pixelSize: 12
anchors.fill: parent
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
}
}
Item {
width: headerModel.get(1).columnWidth
height: parent.height
Item {
anchors.fill: parent
CheckBox {
id : checkbox
scale: 0.7
anchors.centerIn: parent
ButtonGroup.group: checkboxGroup
checked: model.check
MouseArea {
anchors.fill:parent
propagateComposedEvents : true
onClicked: {
mouse.accepted = false
model.check=!check
}
}
Connections {
target : headerCheckbox
onClicked : {
if (headerCheckbox.checkState == 2 && !model.check) model.check = true
else if (headerCheckbox.checkState == 0 && model.check) model.check = false
else model.check
console.log(model.check)
}
}
}
}
}
}
}
}
}
}