【问题标题】:QML tree view from a model来自模型的 QML 树视图
【发布时间】:2017-08-24 16:21:31
【问题描述】:

我对 QML 很陌生,我正在努力寻找如何以简单的方式渲染树模型的任何信息(尽管是水平的,而不是垂直的):

似乎 QML 仅支持来自模型的列表数据结构。有什么办法吗?

【问题讨论】:

  • TreeView显示树数据。如果您不喜欢这样,您始终可以使用QQuickItemCanvas 来创建自己的项目
  • TreeView 似乎无法像图片中那样渲染模型。如果可能的话,我希望避免创建 C++ 实现。
  • TreeView 能够完全按照您绘制的方式显示数据。您认为这里可能存在什么问题?
  • 可以吗?就像我说的,我是新手,所有图片都只显示“典型”树视图。如何让它发挥作用?特别是,是否可以将具有相同父级的节点放在同一级别上?
  • @folibis 所以,真的有可能吗,因为没有答案?

标签: c++ qt qml


【解决方案1】:

我自己想出来的。诀窍是使用 DelegateModel、Repeater 和行/列布局,而不是 TreeView。

  1. 使用 DelegateModel 创建一个显示当前节点的组件。
  2. 使用Repeater创建子组件 - 让组件动态创建自己的另一个实例,将当前节点分配为新构建的DelegateModel的rootIndex,并将其设置为Repeater的模型。
  3. 通过正确使用布局,您可以完全按照所附图像中的方式定位节点。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2012-01-18
  • 2016-10-07
  • 2011-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多