为什么GridView项不换行?

为什么GridView项不换行?,gridview,qml,qtquick2,Gridview,Qml,Qtquick2,我在qml代码中使用了GridView,但它只在一行中显示所有项,但我不想要它。您可以在下图中看到: 这是我的代码: import QtQuick 2.8 import QtQuick.Controls 2.1 import Qt.labs.folderlistmodel 2.1 ApplicationWindow{ id: a width: 480 height: 640 FolderListModel{ id : listModel

我在qml代码中使用了GridView,但它只在一行中显示所有项,但我不想要它。您可以在下图中看到: 这是我的代码:

import QtQuick 2.8
import QtQuick.Controls 2.1
import Qt.labs.folderlistmodel 2.1

ApplicationWindow{
    id: a
    width: 480
    height: 640
    FolderListModel{
        id : listModel
        folder: "/home/muhammad/Pictures"
        nameFilters: ["*.jpg"]
    }
    Component{
        id: dd
        Image {
            id: m
            width: a.width/3
            height: width
            source: filePath
        }
    }

    GridView{
        verticalLayoutDirection: GridView.TopToBottom
        layoutDirection: Qt.LeftToRight
        anchors.fill: parent
        flow: GridView.FlowLeftToRight
        model: listModel
        delegate: dd
    }

}

如何解决此问题?

GridView中每个单元格的大小由和决定。默认单元格大小为100x100。请注意,单元大小决定了视图的布局。学员可以决定如何覆盖为每个单元格保留的区域。例如,您可能希望将图像代理的大小调整为cellWidth和cellHeight,并将其fillMode设置为Image.PreserveApectFit

GridView {
    id: gridView

    cellWidth: 200
    cellHeight: 200

    delegate: Image {
        width: gridView.cellWidth
        height: gridView.cellHeight
        fillMode: Image.PreserveAspectFit
    }
}