QML ListView选中的高亮
时间: 2023-12-03 19:54:47 浏览: 160
在 QML 的 ListView 组件中,可以通过设置 highlight 颜色和 highlightMoveDuration 属性来实现选中项高亮显示和高亮移动的动画效果。具体的实现方式如下所示:
```qml
ListView {
model: ["Apple", "Banana", "Orange", "Grape"]
delegate: Text {
text: modelData
height: 50
width: parent.width
color: ListView.isCurrentItem ? "white" : "black"
background: ListView.isCurrentItem ? "blue" : "transparent"
highlighted: ListView.isCurrentItem
highlight: Rectangle {
color: "lightblue"
}
highlightMoveDuration: 200
}
}
```
上述代码中,我们通过设置 delegate 中的 highlighted 属性为 ListView.isCurrentItem 来实现选中项的高亮显示。同时,我们还设置了 highlight 属性来定义选中项高亮的颜色,highlightMoveDuration 属性来定义高亮的移动动画时间。在 delegate 中,我们还可以根据选中状态来设置文本和背景的颜色,从而实现更加醒目的选中效果。
阅读全文