qtableview 个数 设置_QTableView详细使用请参考:24.QTableView函数使用,右击菜单实现...

本文介绍了Qt模型视图设计模式,重点讲解了QTableView的使用,包括QAbstractListModel、QStandardItemModel和QAbstractTableModel等模型。内容涉及数据索引、数据角色(如DisplayRole、DecorationRole等)及其在视图中的表现,以及如何通过信号与槽进行数据交互。
摘要由CSDN通过智能技术生成

模型视图设计模式的核心思想

使模型(数据)与视图(显示)相分离

模型只需要对外提供标准接口存取数据,无需数据如何显示

视图只需要自定义数据的显示方式,无需数据如何组织存储

当数据发生改变时,会通过信号通知视图

当用户与视图进行交互时,会通过信号向模型发送交互信息

其中QStandardItemModel的常见子类有:

QAbstractListModel:用来创建一维列表模型

QStandardItemModel:用来存储定制数据的通用模型

QAbstractTableModel: 用来创建二维列表模型

在Qt中,不管模型以什么结构组织数据,都必须为每个数据提供不同的索引值,使得视图能通过索引值访问模型中的具体数据

效果:

其中index()是个重载函数,用来获取QModelIndex 索引值,完整的index()函数如下所示:

以QFileSystemModel为例:

也可以通过index索引值来查找数据,以QFileSystemModel模型为例, 与index相关的成员函数有:

其中data ()和setData()函数的参数role是模型数据角色

role 数据角色

当role值不同时,则显示在视图上的方式也会不同

对于role角色,常用的值有:

Qt::DisplayRole         0          以文本方式显示数据(QString)

Qt::DecorationRole    1         将数据作为图标来装饰(QIcon,QPixmap)

Qt::EditRole                 2          可编辑的数据信息显示(QString)

Qt::ToolTipRole           3          作为工具提示显示(QString)

Qt::StatusTipRole        4         作为状态栏中显示的数据(QString)

Qt::WhatsThisRole      5         作为帮助信息栏中显示的数据(QString)

Qt::FontRole                 6        设置字体(QFont)

Qt::TextAlignmentRole  7       设置模型数据的文本对齐(Qt::AlignmentFlag)

Qt::BackgroundRole      8        设置模型数据的背景色(QBrush)

Qt::ForegroundRole    9         设置模型数据的前景色,比如字体(QBrush)

以QTableView为例

效果:

接下来开始学习模型视图中的委托

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值