我是 Qt 模型/视图编程的新手,并已阅读 Qt 文档中的可编辑树模型示例。此示例中的好功能是单个对象 ( ) 封装了两条信息,这些信息随后显示在包含两列 ( and )TreeItem
的单行中,这要归功于and的覆盖。name
description
QModelIndex QAbstractItemModel::index
QVariant QAbstractItemModel::data
现在,我还有一个自定义类(例如Foo
),其中包含两条信息(Foo::m_name
和Foo::m_description
),我想在包含两列的单行中显示它们,但QAbstractItemModel
我不想子类化QStandardItemModel
,因为它有很多功能。但是,似乎我必须QStandardItem
为每个对象创建两个对象Foo
,一个用于处理m_name
,另一个用于处理m_description
。如何将单个Foo
对象保留在内存中并让这两个QStandardItem
对象引用它?
在我的问题中有一个隐含的假设,即必须QStandardItem
为每个(行,列)对创建一个对象。如果这是错误的,请告诉我。