我正在尝试在QML中使用FileDialog
组件。
我在链接http://doc.qt.io/qt-5/qml-qtquick-dialogs-filedialog.html的Qt文档中完成了相同的代码,但它没有显示对话框并返回错误:QFileInfo::absolutePath: Constructed with empty filename
。我试着写一个简单的代码来测试它,返回是同样的错误。我的代码如下。
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
}
}
}
答案 0 :(得分:1)
回答我自己的问题:
当组件不完整时, 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;
}
}