我有一个简单的 QQC2 TreeView,当我单击树中的一个项目时,我想将它添加到我的 ItemSelectionModel。根据在线示例,我创建了以下代码。当单击我树中的一个项目时,它会突出显示为当前项目,并且下面的 onCurrentModelIndexChanged 处理程序会触发。
当处理程序触发时,hasSelection 显示为 true,并且当前打印的模型索引是正确的。但是, selectedIndex 始终为空。为什么没有填充列表?
Rectangle {
id: paneMenu
anchors.fill: parent
color: gui.colorRGBString(GUIConstants.EColorElement_Background)
TreeView {
id: mytreeview
anchors.fill: parent
model: treemodel
delegate: delegateMenuItem
onCurrentModelIndexChanged: {
selModel.select(currentModelIndex, ItemSelectionModel.Select | ItemSelectionModel.Current)
console.log("**selModel has selection: "+selModel.hasSelection)
console.log("**Selected indexes:"+selModel.selectedIndexes)
console.log("**Current model index:"+currentModelIndex)
}
}
}
这个类似的问题指出 select 需要一个模型索引(不是整数)必须传递给 .select 方法(我这样做)。