使用Qt模型 - 视图架构的首选模式是什么?

时间:2010-11-19 09:49:37

标签: c++ qt architecture qt4

你如何在Qt中使用MV?我尝试过这两种方法:

  1. 如果有现有/遗产 代码“数据” - 类,我使用模型 作为一个门面。该 模型实现类得到一个 引用数据,并调用它 对模型项访问起作用 呼叫。

  2. 对于新实施,我推导出来 来自QAbstractModel的数据类。

  3. 你还有其他办法吗?

2 个答案:

答案 0 :(得分:1)

我最终采取的方法类似于你建议的方法。我目前正在使用Facade将我的遗留数据模型映射到QAbstractModel中。

起初,立面有点过于复杂,但我慢慢地将功能从立面模型中拉出来并将其推入我的数据模型中。然后有一天我会彻底拆除外立面,以便我的模型是模型。

拥有一个单一的模型会让我的头疼得更少。

答案 1 :(得分:-1)

Qt中的MV代码有点乱,并且实现起来很笨拙。特别是如果你必须实现分层列表(树视图)。

根据您的需要,我发现在某些情况下使用QListWidgetQTableWidgetQTreeWidget便利类可能会少得多。