FileDialog 显示没有文件

FileDialog shows no files

我在main.qml中有这个代码:

import QtQuick 2.9
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtQuick.Controls 2.2

ApplicationWindow {
    visible: true
    width: 640
    height: 480
    title: qsTr("Test")

    FileDialog {
        id: fileDialog
        folder: shortcuts.home
        visible: true
        title: "Please choose an image"
        nameFilters: ["Image files (*.jpg *.png)", "All files (*)"]
        onAccepted: {
            image.source = fileDialog.fileUrl
        }
    }

    Image {
        id: image
        anchors.centerIn: parent
    }
}

当我在 QtCreator 中按 运行 运行 时,我得到一个文件对话框,其中没有列出任何文件。

截图 1

如果我 运行 它会列出文件 qmlscene-qt5 main.qml,但这样我就没有可用的过滤器(仅限所有文件)。

截图 2

您必须在项目完全创建后使其可见:

FileDialog {
    id: fileDialog
    folder: shortcuts.home
    // visible: true <--- ---
    title: "Please choose an image"
    nameFilters: [ "Image files (*.jpg *.png)", "All files (*)" ]
    onAccepted: {
        image.source = fileDialog.fileUrl
    }
    Component.onCompleted: visible = true // <--- +++
}