[英]QML - TableView - Access TableViewColumn property inside headerDelegate
我在TableView
有自定義headerDelegate
。 我需要訪問TableViewColumn
屬性,例如headerDelegate
內的resizable
屬性。
有什么辦法可以在headerDelegate
訪問此屬性?
是否可以在headerDelegate
內的TableViewColumn
訪問用戶定義的屬性?
例如,我可以創建稱為用戶定義的屬性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
是虛構的。 我想得到類似的東西。
從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"
}
}
您要設置TableView id屬性。 您將能夠以所需的方式從整個文件范圍訪問它。
TableView{
id: myTableView
headerDelegate: Rectangle {
color: myTableView.whatever // Change whatever by any property of myTableView
}
}
重要說明:設置委托人ID並以其他方式訪問將不起作用,因為在讀取qml解釋器時無法立即實例化它,而且它可能會針對多個委托項實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.