我正在试验 Qt 和模型/视图框架。
我有一些数据想在树形视图中显示和编辑。
我已经阅读了文档和本教程,但我仍然不确定在我的案例中最佳实践是什么。
数据来自服务器,看起来像这样:
int id;
int parentId;
QString name;
float price;
id 是“正在运行”的数字,并且都是唯一的,因此数据可能看起来像这样。
Id =1
parentId =0
name= food
id = 5
parentId =1
name = pizza
该 id 对最终用户不感兴趣,不应显示。
使用递归函数将其纳入层次结构应该非常简单。(但这里也欢迎任何想法)
- 我应该将我从服务器获得的数据直接放入一个
QStandardItemModel
? - 创建我自己的类并继承有什么意义
QStandardItemModel/Item
吗? - 每个字段(id、name、price)是它自己的
QStandardItem
吗?
如果在#3 上是,当我编辑包含名称的项目时,我如何将 id 连接到该名称,以便我可以将更改发布回服务器。
正如您所了解的这些是基础知识,推荐结构的草图会很棒。