QTreeView 使用示例 - 如何将子节点添加到现有项目?
Posted
技术标签:
【中文标题】QTreeView 使用示例 - 如何将子节点添加到现有项目?【英文标题】:QTreeView usage example - how to add a subnode to an existing item? 【发布时间】:2016-02-22 14:12:57 【问题描述】:我对 Qt 还很陌生,因此尝试了解事情是如何工作的。特别是对于 QTreeView 这似乎相当困难:来自 Qt 的文档和示例(至少对我而言)或多或少是神秘的。我猜只有当人们已经知道它是如何工作的时候才会理解这个文档。
那么:有人可以提供一个示例或链接到一个适合初学者并演示 QTreeView 用法的示例吗?演示如何向其添加节点和一些子节点的方法?
谢谢!
【问题讨论】:
【参考方案1】:也许this mini example 可以帮助你。
但要理解它,您必须掌握模型-视图的概念。这个想法是您不添加到视图中,您添加到模型中并且视图会自行更新。
【讨论】:
【参考方案2】:您可以从QStandardItemModel
和QTreeView
的组合开始。
通过QStandadItemModel::setRowCount()
和QStandardItemModel::columnCount()
设置模型的正确行数和列数。
然后您可以使用QStandardItemModel::setItem()
将 QStandardItem 实例插入模型的特定单元格中。
QStandardItem
具有与QStandardItemModel
类似的接口,用于创建子行和列以及插入子项:QStandardItem::setRowCount()
、QStandardItem::setColumnCount()
和QStandartItem::setChild()
。
如果您需要,我可以准备一个示例。
【讨论】:
以上是关于QTreeView 使用示例 - 如何将子节点添加到现有项目?的主要内容,如果未能解决你的问题,请参考以下文章