我不是专业的应用程序开发人员,所以我可能不熟悉模型/视图设计模式。尽管如此,我正试图在一个爱好应用程序中使用它并且悲惨地失败。我遇到的主要问题是我尝试显示和修改的数据不能用QAbstractItemModel
的扩展名轻松表示。
我试图封装的数据本质上是一个可增长/可收缩,可变的整数列表。我应该放弃这样的数据的模型/视图模式吗?当数据的“维度”得到修复时似乎更合适。如果没有,是否有一个我可以采取的实施例,或者我应该拿起的好书?
问候。
答案 0 :(得分:3)
我会看QAbstractListModel。这听起来像是一个比基本QAbstractItemModel
更相关的模型。
示例中该模型的视图也有所不同:Puzzle
如果您需要更高级别的模型/视图,请查看this。
答案 1 :(得分:0)
QAbstractItemModel
只是一个,实际上是非常有限的实现模型/视图设计模式的方式。如果你发现你的情况不合适,那就不要太费力了。
更好的方法可能是使用自己的View类拉出自己的Model类并放弃QAbstractItemModel
。这种设计模式比QT中实现的奇怪风格更多,而且这种风味仅适用于非常特殊的应用。
我建议您阅读about it some more并设计自己的模型 - 视图设置。如果你自己动手,你的课堂设计很可能更清晰,更好理解。