如何在qml treeview中使用userdefine模型?

问题描述:

参考演示是这样的:如何在qml treeview中使用userdefine模型?

TreeView { 
    TableViewColumn { 
     title: "Name" 
     role: "fileName" 
     width: 300 
    } 
    TableViewColumn { 
     title: "Permissions" 
     role: "filePermissions" 
     width: 100 
    } 
    model: fileSystemModel 
} 

我想给fileSystemModel改变我的自定义模式。我应该怎么做?谢谢。

您可以像导出“fileSystemModel”一样导出模型。

基本步骤是

  1. 创建模型的实例
  2. 设置你的实例作为发动机的根上下文上下文属性
  3. 加载主QML文件

示例假设本地定义的QQuickView view但是QQuickWindowQQmlApplicationEngine会导致非常相似的代码:

MyModel model; 
view.engine()->rootContext()->setContextProperty("_identifierForModel", &model); 

setContextProperty()的第一个参数是在QML一侧可见的名称,即它在QML中的作用类似于“id”属性的值。