QML 文件对话框(选择文件夹)
Posted
技术标签:
【中文标题】QML 文件对话框(选择文件夹)【英文标题】:QML FileDialog (selectFolder) 【发布时间】:2020-05-19 15:14:42 【问题描述】:我正在做一个 QML / QT / C++ 应用程序(训练自己进行实习)。我需要打开FileDialog
以选择文件夹位置,但在写入selectFolder: true
行时出现错误。
我在这里找到了这个属性https://doc.qt.io/qt-5/qml-qtquick-dialogs-filedialog.html#selectFolder-prop
这很奇怪,因为我也不能设置 selectExisting
和 selectMultiple
。
文档说我们必须在打开对话框之前指定这些。我这样做了,我不明白。
谁能帮我解决这个错误?
这是我在 main.qml 中导入的内容:import QtQuick.Dialogs 1.3
非常感谢。祝你有美好的一天。
代码如下:
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Dialogs 1.3
Window
id: mainWindow
visible: true
width: 700
height: 500
// FileDialog
FileDialog
id: fileDialog
title: "Please choose a file"
folder: shortcuts.home
selectFolder: true
onAccepted:
console.log("You chose: " + fileDialog.fileUrls)
//acceptDialog();
onRejected:
console.log("rejected")
//rejectDialog();
Component.onCompleted: visible = true
这不是整个代码(+ 200 行) Image from Qt Creator
【问题讨论】:
向我们展示更多代码。 (FWIW,您实际上是在询问 QML,而不是直接询问 C++。如果您只使用 C++,答案会有所不同。) 对不起,我导入了一张图片,但它没有出现。我正在弄清楚如何在这里分享图像。我正在使用 QML 作为前端,但使用 C++ 作为后端 您应该将代码文本复制粘贴到问题中。粘贴图片的用处不大,因为如果我们想自己尝试一下,就需要重新输入。 完成了。我就是来看编辑按钮的 【参考方案1】:对我来说,代码运行良好。 只需尝试删除然后重新放置该行。 有时 qml 会无缘无故地给你这些类型的错误。试着运行它。如有错误请贴出来
【讨论】:
我做了很多次,但我仍然得到像我发布的图片一样的错误,我不明白“这不是 Qt Creator 的整个代码(+ 200 行)图像”【参考方案2】:我解决了这个问题。
我的 Qt 项目版本是 5.12,我用 Qt 5.14 创建了一个新项目,它工作正常。 谢谢。
【讨论】:
以上是关于QML 文件对话框(选择文件夹)的主要内容,如果未能解决你的问题,请参考以下文章
如何在 WebEngineView 中呈现的 html 文件中弹出文件对话框/打印对话框?