QTreeView 或 QTreeWidget
QTreeView or QTreeWidget
我想在我的程序中实现一棵嵌套 sub-levels 的树,我正在寻找这两种 (View/Widget) 中哪一种最适合我的目标。
我有一个任务天数列表 done/missed/failed,每个任务都有它执行的次数 done/missed/failed 的计数,最后是当天的分数。
我想这样显示:
我在 QtCreator 中使用 QTreeWidget 制作了这个示例,但我担心很难修改这些元素,因为它们存储在其他地方。
我的担心是否合理,我应该转到 model/view 结构,还是我可以轻松地使用 QTreeWidget?树将记录任务,因此会不断变化。元素只会被添加到其中,而不会被删除。日期将从 highest-lowest 开始排序(第 2 天在前,然后是第 1 天)
如果您的数据存储在数据库模型中,或者如果您想要一个单一的数据模型并以不同的方式在某些视图中显示它,那么您最好选择 QTreeView
。
但是 QTreeWidget
以某种方式拥有它的内部模型以及在索引上下文中处理模型的方法。一般来说,如果你只是想要一些简单易用的东西,你可以使用小部件方式。
但是 Model/View 方法在我看来更为通用和灵活。您可以创建自己的模型和视图子类,这使您可以随心所欲。
我想在我的程序中实现一棵嵌套 sub-levels 的树,我正在寻找这两种 (View/Widget) 中哪一种最适合我的目标。
我有一个任务天数列表 done/missed/failed,每个任务都有它执行的次数 done/missed/failed 的计数,最后是当天的分数。
我想这样显示:
我在 QtCreator 中使用 QTreeWidget 制作了这个示例,但我担心很难修改这些元素,因为它们存储在其他地方。
我的担心是否合理,我应该转到 model/view 结构,还是我可以轻松地使用 QTreeWidget?树将记录任务,因此会不断变化。元素只会被添加到其中,而不会被删除。日期将从 highest-lowest 开始排序(第 2 天在前,然后是第 1 天)
如果您的数据存储在数据库模型中,或者如果您想要一个单一的数据模型并以不同的方式在某些视图中显示它,那么您最好选择 QTreeView
。
但是 QTreeWidget
以某种方式拥有它的内部模型以及在索引上下文中处理模型的方法。一般来说,如果你只是想要一些简单易用的东西,你可以使用小部件方式。
但是 Model/View 方法在我看来更为通用和灵活。您可以创建自己的模型和视图子类,这使您可以随心所欲。