QAbstractItemModel::data 调用的问题

q672856032 2011-01-26 04:36:53
目前在学习c++ gui qt的编程,就是第十章里面的钱币换算的程序有一个问题不太理解。

class CurrencyModel : public QAbstractTableModel

CurrencyModel重写了data方法。可是我的问题是在CurrencyModel类没有对data进行调用,我想知道data方法是什么时候调用的是在父类吗??
...全文
872 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhu_xz 2011-01-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 prochsh 的回复:]

没仔细看,刚才看了QAbstractTableModel这个类貌似没有data方法
[/Quote]
这个是继承自父类QAbstractItemModel的纯虚方法
q672856032 2011-01-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 prochsh 的回复:]
没仔细看,刚才看了QAbstractTableModel这个类貌似没有data方法
[/Quote]
QAbstractTableMode也是从它的父类继承来的
信念 2011-01-26
  • 打赏
  • 举报
回复
没仔细看,刚才看了QAbstractTableModel这个类貌似没有data方法
q672856032 2011-01-26
  • 打赏
  • 举报
回复
补充一下data 方法描述 CurrencyModel::data(const QModelIndex &index, int role)
信念 2011-01-26
  • 打赏
  • 举报
回复
Model是被set到view里,view通过系统调用data
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 Qt 官方文档提到支持的类型包括 QStringList、QVariantList、QObjectList 和 QAbstractItemModel。其中,QAbstractItemModel 用于提供复杂的数据模型。以下是一个关于如何将 QAbstractItemModel 与 QML 结合使用的示例说明: 创建 QAbstractItemModel 的子类 首先,需要定义一个继承自 QAbstractItemModel 的类。在这个类中,需要实现模型的基本接口函数,如 rowCount()、columnCount()、data() 和 index() 等。这些函数用于定义数据的结构和访问方式。例如,rowCount() 和 columnCount() 用于指定模型的行数和列数,data() 用于返回特定索引处的数据,index() 用于获取指定位置的索引对象。 在这个自定义模型类中,可以将数据存储在内部数据结构中,如列表、树形结构等,具体取决于数据的复杂性和需求。 在 C++ 中注册模型 在 C++ 代码中,创建自定义模型类的实例,并将其注册到 QML 环境中。这可以通过调用 QQmlContext::setContextProperty() 方法来实现,将模型对象设置为 QML 上下文的属性。这样,QML 文件就可以通过指定的属性名访问该模型。 例如,如果模型对象名为 myModel,则在 QML 中可以通过 myModel 来引用它。 在 QML 中使用模型 在 QML 文件中,可以通过 ListView、TableView 或其他视图组件来展示模型中的数据。通过将视图组件的 model 属性绑定到注册的 QAbstractItemModel 对象,视图组件会自动从模型中获取数

21,437

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧