2

我正在阅读有关模型/视图编程设计模式的信息,但我不明白如何定义模型。我的模型应该继承自 QAbstractItemModel?如果是,我认为这是非常有限的,因为我的模型类不能从另一个模型类继承。

4

1 回答 1

2

C++ 具有多重继承,因此从技术上讲,您的模型可以从 Qt 模型基类和其他东西派生。
话虽如此,多重继承相当棘手(无论如何对我来说),组合更容易正确。

将 ORM 模型类与 Qt“合并”的一种方法是创建一个 Qt 模型类,其中包含一个(或多个)ORM 模型作为成员。Qt 模型本质上会将所有请求代理到您的 ORM 模型。Qt 模型只是一个“适配器”。这使您的 ORM 代码独立于 GUI 工具包,这通常很好。

确保您查看了Qt 方面的模型子类化参考。

于 2012-04-28T06:37:43.913 回答