QML GridView 列闪烁问题

时间:2021-05-30 20:51:03

标签: qt qml

当我调整 grid_view 的宽度时,为什么 GridView 中的右列闪烁?当有 7 列时它开始发生。我写了一些 javascript 代码,当单元格宽度达到某个最大宽度时添加行。这使我能够观察发生此问题时存在的列数。它从 7 列开始,然后在 11 列处再次闪烁,再次在 13、14、15、19、21、22 和 23 列处闪烁。我没有进一步测试。为什么最右边的列在调整大小时会像这样闪烁?我相信它可能与 cellWidth 值的舍入有关。但是如何修复呢? Math.floor/round/ceil 导致与父容器的对齐问题。

enter image description here

代码如下:

GridView {
    id: grid_view
    anchors.fill: parent
    cellWidth: width / 7
    cellHeight: height / 7
    model: 50
    delegate: Rectangle {
        width: grid_view.cellWidth
        height: grid_view.cellHeight
        color: "red"
        border.width: 2
    }
    focus: true
}

0 个答案:

没有答案