5

我已经创建了这个 QML 窗口,但是当我用鼠标抓住它的边框并调整它的大小时,窗口内容的重绘速度非常慢。你可以克隆我的仓库并自己测试。任何想法如何提高性能?

import QtQuick 2.0
Rectangle {

 id: root
  width: 600
  height: 600
  color: "lightgrey"
  ListView {
    model: mainModel
    spacing: 5

    width: parent.width
    orientation: ListView.Horizontal

    delegate: Rectangle {
        //width: parent.desiredWidth / mainModel.dataLen()//+ " " + model.sort
        width: root.width / mainModel.dataLen() - 10
        //width: 200

        ListView {
            id: lv1
            ScrollBar {
                flickable: lv1
                vertical: true
                hideScrollBarsWhenStopped: false
                scrollbarWidth: 5
            }

            model: homm
            spacing: 5
            width: parent.width
            height: 150
            orientation: ListView.Vertical
            delegate:
                Rectangle {
                    radius: 5
                    anchors.rightMargin: 5
                    anchors.leftMargin: 5
                    width: lv1.width
                    height: 20
                    color: "black"
                    Text { text: model.name 
                        anchors.fill: parent
                        color: "white"
                    }
            }
        }
    }

}
}

在这个 QML 中,我有 listView 的 listView,它可以可视化 ListModel 的 ListModel。homm是主模型的属性名称。内部模型的元素有一个名为 的属性name您可以在此处此处浏览这些类的代码。

4

0 回答 0