我在QML tableview中组合了一个ComboBox,如下所示:
TableView {
id: reviewTable
frameVisible: false
sortIndicatorVisible: true
width: parent.width; height: parent.height
anchors.centerIn: parent
TableViewColumn {
resizable: true
role: "SeriesDescription"
title: "Series Description"
width: 350
}
TableViewColumn {
resizable: false
role: "TimePoints"
title: "Time Points"
width: 100
}
TableViewColumn {
role: "ImageType"
title: "Image Type"
width: 100
delegate: Rectangle {
anchors.fill: parent
//anchors.verticalCenter: parent.verticalCenter
ComboBox {
model: ListModel {
ListElement { text: "Veggies" }
ListElement { text: "Fruits" }
ListElement { text: "Cars" }
}
}
}
}
}
然而,这会以奇怪的方式呈现组合框,其中边界看起来有点截止。请参阅附带的屏幕截图有谁知道如何解决这个问题?
答案 0 :(得分:2)
这里不是完美的解决方案,但无论如何......你可以通过设置rowDelegate
来改变行高,例如:
rowDelegate: Item {
height: 30
}
所以伸展组合框以填满所有空间:
TableViewColumn {
role: "ImageType"
...
delegate: Rectangle {
ComboBox {
anchors.fill: parent
anchors.margins: 2
model: ListModel {
...
}
}
}
}