如何创建包含大量项目的H/V滚动表(ListView的ListView)

如何创建包含大量项目的H/V滚动表(ListView的ListView),listview,gridview,scrollview,qml,Listview,Gridview,Scrollview,Qml,我正在尝试设计一个qml项目,它将包含数千个作为网格/表格排列的项目 我尝试了几种方法(TableView、GridView),但每次尝试使用rows*columns格式或内存调整组件大小时都遇到问题 到目前为止,我发现最好的方法是: import QtQuick 2.4 import QtQuick.Controls 1.3 import QtQuick.Window 2.2 import QtQuick.Dialogs 1.2 Applicati

我正在尝试设计一个qml项目,它将包含数千个作为网格/表格排列的项目

我尝试了几种方法(TableView、GridView),但每次尝试使用rows*columns格式或内存调整组件大小时都遇到问题

到目前为止,我发现最好的方法是:



    import QtQuick 2.4
    import QtQuick.Controls 1.3
    import QtQuick.Window 2.2
    import QtQuick.Dialogs 1.2

    ApplicationWindow {
        title: qsTr("Hello World")
        width: 800
        height: 600
        visible: true

        Item {
            id: grid
            property int numRows: 1000
            property int numColumns: 1000
            property int cellSize: 35
            property int cellSpacing: 1

            anchors.fill: parent

            ScrollView {
                id: scrollView
                anchors.fill: parent
                anchors.centerIn: parent
                contentItem: columnsList

                ListView {
                    id: columnsList

                    anchors.fill: parent
                    anchors.centerIn: parent
                    orientation: ListView.Vertical
                    spacing: grid.cellSpacing
                    clip: true
                    interactive: false
                    cacheBuffer: 1

                    model: grid.numRows

                    delegate: ListView {
                        id: row
                        width: columnsList.width
                        height: grid.cellSize
                        orientation: ListView.Horizontal
                        spacing: grid.cellSpacing
                        clip: true
                        interactive: false
                        cacheBuffer: 1

                        model: grid.numColumns
                        delegate: Rectangle {
                            width: grid.cellSize
                            height: grid.cellSize
                            color: "green"
                        }
                    }
                }
            }
        }
    }

性能正常,但水平滚动条未显示! 我还尝试手动设置高度和宽度,但这会导致创建所有单元格,这是不可接受的

这是一个好方法吗? 是否有一种解决方法来显示水平滚动条