我正在使用this code并尝试获取行数或所选项目是否包含子项。但我得到了一个奇怪的行为。
我在qml中添加了下一个代码:
itemDelegate: Item {
CheckBox {
id: checkbox
text: styleData.value.text
checked:false
visible: styleData.value === undefined ? false : true
onClicked: {
theModel.print(styleData.row, styleData.column,
theModel.index)
theModel.print(styleData.row, styleData.column,
theModel.index(styleData.row,
styleData.column,
theModel.currentIndex))
}
}
}
我的模型(treemodel.cpp)有以下方法:
bool TreeModel::print(int row, int column, const QModelIndex &modelIndex)
{
createIndex(row, column, 1);
qDebug() << Q_FUNC_INFO
<< " row: " << row
<< " column: " << column
<< " rowCount (a): " << this->rowCount(index(row, column, modelIndex))
<< " rowCount (b): " << this->rowCount(modelIndex)
<< " hasChildren (a): " << this->hasChildren(index(row, column, modelIndex))
<< " hasChildren (b): " << this->hasChildren(modelIndex);
return true;
}
当我点击复选框时,有时候行数是正确的,但大多数时候都是错误的。即当我点击没有孩子的行时,rowCount
没有返回0,当我们只有4个孩子时,rowCount
没有返回0。
print
运行正常。当我们使用箭头展开树时,它总是返回正确的值,所以我想问题是我如何将索引传递给<div class="carousel slide" data-ride="carousel">
<div class="carousel-inner" role="listbox">
<div class="item active" style="background-image:url(http://dentistry.utah.edu/images/slider-banner/roy-hume.jpg); ">
</div>
<div class="item" style="background-image: url(http://dentistry.utah.edu/images/slider-banner/school-dentistry-students.jpg);">
</div>
</div>
<!-- CAROUSEL-INNER -->
</div>
方法。
答案 0 :(得分:1)
根据documentation,您可以使用itemDelegate
检索styleData.index
中的当前索引。
这应该按预期工作:
itemDelegate: Item {
CheckBox {
id: checkbox
text: styleData.value.text
checked:false
visible: styleData.value === undefined ? false : true
onClicked: {
theModel.print(styleData.row, styleData.column,
styleData.index)
}
}
}