首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

QTableView的报表项中加入图标的方法

2013-10-27 
QTableView的表格项中加入图标的方法当在使用表视图的时候,需要在表每一行前面加入图标,应该怎么做呢?Qt中

QTableView的表格项中加入图标的方法

当在使用表格视图的时候,需要在表格每一行前面加入图标,应该怎么做呢?Qt中通过使用MVC的处理方式,很容易做到这一点,具体实现如下:

先贴出图,让大家一睹为快

QTableView的报表项中加入图标的方法

下面我就来介绍一下,上图的灯泡是怎么实现的,通过重载QAbstractTableModel中的data方法,如下:(CTblModel 派生自QAbstractTableModel)

void CTblView::mouseMoveEvent(QMouseEvent *event){    const QPoint &p = event->pos();    QModelIndex modelIndex = indexAt(p);    if (modelIndex.isValid())    {        int col = modelIndex.column();        int row = modelIndex.row();        if (col == ledColIndex)        {            pTblModel->setLight(row);        }    }}


pTblModel就是上面定义的CTblModel,到了这里大家应该知道了基本实现思路了吧。


让图标变大一些,按照上面的做法,灯泡图标的大小很小,不管你的light.png图片多大,在表格中显示时的图标大小默认都很小,那么怎么改变图标的大小呢?方法也很简单,就是在CTblView构造函数中加入setIconSize(QSize(25,25));我设置的是25*25大小,显示效果如上图的灯泡效果,大家可以根据自己的应用,调整其大小。






热点排行