环境:qt5.15.2 |QtQuick.Controls 2.15
TableView实现利用DelegateChooser实现列创建,数据由QAbstractTableModel提供
实例代码如下,在Rectangle中创建MouseArea,通过点击来设置model当前行
颜色根据row === planModel.currentRow改变。
TableView {
id:tableView
anchors.top: header.bottom
anchors.left: parent.left
anchors.leftMargin: 20
width:390
height:200
model: planModel
delegate:DelegateChooser{
DelegateChoice{
column:0
delegate: Rectangle{
MouseArea{
anchors.fill: parent
onClicked: {
planModel.currentRow = row
}
}
clip:true