YML 文件对话框问题

QML FileDialog issue

我正在尝试使用 QML 中的 FileDialog 组件。

我在 link http://doc.qt.io/qt-5/qml-qtquick-dialogs-filedialog.html 的 Qt 文档中完成了完全相同的代码,但它没有显示对话框并且 return 出现错误:QFileInfo::absolutePath: Constructed with empty filename.我试着写了一个简单的代码来测试它, return 是同样的错误。我的代码如下。

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

Window {
    visible: true

    width: 360
    height: 640

    maximumHeight: 640
    minimumHeight: 640

    maximumWidth: 360
    minimumWidth: 360

    title: "Acessar Galeria Test"

    Rectangle {
        id: principal

        anchors.fill: parent

        FileDialog {
            id: fileDialog

            title: "Please choose a file"

            folder: shortcuts.home

            visible: true
        }
    }
}

回答我自己的问题:

当组件不完整时,

FileDialog visible property 不能为真。所以代码必须像下面这样:

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

Window {
    visible: true

    width: 360
    height: 640

    maximumHeight: 640
    minimumHeight: 640

    maximumWidth: 360
    minimumWidth: 360

    title: "Acessar Galeria Test"

    Rectangle {
        id: principal

        anchors.fill: parent

        FileDialog {
            id: fileDialog

            title: "Please choose a file"

            folder: shortcuts.home

            visible: false
        }
    }

    Component.onCompleted: {
        fileDialog.visible = true;
    }
}