qml FolderListModel

时间:2011-07-03 13:48:11

标签: design-patterns model delegates qt4 qml

我正在尝试使用FolderListModel,根据此example

像这样:

 ListView
{
    anchors.fill: parent
    FolderListModel
    {
        id: foldermodel
        folder: "C:/Qt/Projects/"
        showDirs: true
        showDotAndDotDot: true
        nameFilters: ["*"]
        sortField :  "Name"
    }
    Component {
        id: filedelegate
        Text { text: fileName }
    }
    model: foldermodel
    delegate: filedelegate
}

我希望以递归方式显示基目录下的所有文件/目录。 有没有人知道如何做到这一点?

2 个答案:

答案 0 :(得分:5)

您似乎在文件夹属性中有一个无效的网址。 Documentation for FolderListModel元素将'folder'属性描述为:

  

folder属性包含模型当前提供的文件夹的URL。该值是表示为字符串的URL,并且必须是file:或qrc:URL或相对URL。默认情况下,该值是无效的URL。

这意味着folder属性必须采用格式folder: "file:///[Directory path]"。例如,尝试将此情况下的文件夹属性更改为:folder: "file:///C:/Qt/Projects/"并查看是否有效。

答案 1 :(得分:1)

我认为这不能在不爬行fs的情况下完成,这需要创建一个列表模型并将树复制到...

不过要小心循环,过滤。和..出

- http://rzr.online.fr/q/qml