我在headerDelegate
中有自定义TableView
。我需要访问TableViewColumn
内的resizable
属性,例如headerDelegate
中的headerDelegate
属性。
有什么方法可以在TableViewColumn
内部访问此属性?
是否可以在headerDelegate
内的enableSorting
中访问用户定义的属性?
例如,我可以在TableViewColumn
内创建用户定义的属性headerDelegate
并在sortingIndicator
内访问该属性以隐藏或显示TableView{
TableViewColumn{
property bool sortingEnabled: false
resizable: false
}
headerDelegate: Rectangle {
color: styleData.resizable?"red":"blue"
border.color:styleData.sortingEnabled?"red":"blue"
}
}
吗?
更新
styleData.resizable
styleData.sortingEnabled
和#include <OpenNI.h>
是虚构的。我想得到类似的东西。
答案 0 :(得分:0)
从TableView
的文档中,可以访问我们可以使用的列
getColumn(index)
方法
TableView{
TableViewColumn{
property bool sortingEnabled: false
resizable: false
}
headerDelegate: Rectangle {
color: getColumn(styleData.column).resizable?"red":"blue"
border.color:getColumn(styleData.column).sortingEnabled?"red":"blue"
}
}
答案 1 :(得分:0)
您想要的是设置TableView id属性。您将能够以所需的方式从整个文件范围访问它。
TableView{
id: myTableView
headerDelegate: Rectangle {
color: myTableView.whatever // Change whatever by any property of myTableView
}
}
重要说明:设置委托人id并以其他方式访问将不起作用,因为在阅读qml解释器时并没有实例化它,而且它可能会针对多个委托项实例。