如何在QML项目中显示本地目录中的多个图像?

时间:2019-03-07 12:05:29

标签: qt qml

我正在尝试从QML项目中的本地目录显示多个图像。我是QT编程的新手。

我正在使用此代码,此代码正在运行,但没有图像显示。我正在使用Ubuntu。

ListView {

    width: 400;
    height: 500

    FolderListModel {
        id: folderModel
        nameFilters: ["*.jpg"]

        folder: "/home/pc/jpeg_serial_capture/Capture_Image/04-02-2019/"
    }

    Component {
        id: fileDelegate
        Column {
            Image {
                width: 150; height: 150
                fillMode: Image.PreserveAspectFit
                smooth: true
                source: folderModel.folder + "/home/pc/jpeg_serial_capture/Capture_Image/04-02-2019/" + fileName
            }
            Text { text: fileName }
        }
    }

    model: folderModel
    delegate: fileDelegate
    }

1 个答案:

答案 0 :(得分:1)

您必须使用带有前缀file://的url,而不是串联文件名,而应使用fileURL

ListView {
    width: 400;
    height: 500
    FolderListModel {
        id: folderModel
        nameFilters: ["*.jpg"]
        folder: "file:///home/pc/jpeg_serial_capture/Capture_Image/04-02-2019"
    }
    Component {
        id: fileDelegate
        Column {
            Image {
                width: 150; height: 150
                fillMode: Image.PreserveAspectFit
                smooth: true
                source: fileURL
             }
            Text { text: fileName }
        }
    }
    model: folderModel
    delegate: fileDelegate
}