QTableWidgetItem::setFlags()是干什么用的??

QTableWidgetItem::setFlags()是干什么用的??谢谢... QTableWidgetItem::setFlags()是干什么用的??谢谢 展开
 我来答
yuan030411
2015-08-19 · TA获得超过3.1万个赞
知道小有建树答主
回答量:1624
采纳率:94%
帮助的人:173万
展开全部

  【QTableWidget介绍】

  QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。说到QTableWidget,就必须讲一下它跟QTabelView的区别了。QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并且其单元格数据是QTableWidgetItem的对象来实现的(也就是不需要数据源,将逐个单元格内的信息填好即可)。这主要体现在QTableView类中有setModel成员函数,而到了QTableWidget类中,该成员函数变成了私有。使用QTableWidget就离不开QTableWidgetItem。QTableWidgetItem用来表示表格中的一个单元格,正个表格都需要用逐个单元格构建起来。

  【QTableWidget的用法】

  

genuine_pearl
2013-07-16 · TA获得超过276个赞
知道答主
回答量:44
采纳率:0%
帮助的人:57.7万
展开全部

虽然这个问题时间很久了,估计提问者本人都不关注了。不过可能还有人百度到这个问题,刚好今天我用到这个    Qt函数^^


Qt 帮助文档里说明得很清楚

void QTableWidgetItem::setFlags ( Qt::ItemFlags flags )

Sets the flags for the item to the given flags. These determine whether the item can be selected or modified.

See also flags().



Constant

Value

Description


Qt::NoItemFlags    0    It does not have any properties set.    

Qt::ItemIsSelectable    1    It can be selected.    

Qt::ItemIsEditable    2    It can be edited.    

Qt::ItemIsDragEnabled    4    It can be dragged.    

Qt::ItemIsDropEnabled    8    It can be used as a drop target.    

Qt::ItemIsUserCheckable    16    It can be checked or unchecked by the user.    

Qt::ItemIsEnabled    32    The user can interact with the item.    

Qt::ItemIsTristate    64    The item is checkable with three separate states.    


所以总结如下,在你的子ITem,比如你的QtableWidget  为TabWidget

那么 TabWidget->item(row,col)->setFlags(Qt::ItemIsEditable);  //这个第row行第col列的单元格只读

同理,Qt::ItemIsEditable表示可编辑,等等

    QTableWidgetItem* pItem = NULL;
    pItem = new QTableWidgetItem(); 
    /*
      自己需要的特殊功能,如 设置单元格 背景色等等
    */
    pItem->setBackgroundColor(QColor(255,0,0));
    tabSet->setItem(0, 2, pItem);
    tabSet->item(0,2)->setFlags(Qt::ItemIsEditable);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
进击的荷爷
2015-07-27 · 知道合伙人生活技巧行家
进击的荷爷
知道合伙人生活技巧行家
采纳数:16860 获赞数:44458
试验检测工程师

向TA提问 私信TA
展开全部
void QTableWidgetItem::setFlags ( Qt::ItemFlags flags )
Sets the flags for the item to the given flags. These determine whether the item can be selected or modified.
See also flags().



Constant
Value
Description

Qt::NoItemFlags 0 It does not have any properties set.
Qt::ItemIsSelectable 1 It can be selected.
Qt::ItemIsEditable 2 It can be edited.
Qt::ItemIsDragEnabled 4 It can be dragged.
Qt::ItemIsDropEnabled 8 It can be used as a drop target.
Qt::ItemIsUserCheckable 16 It can be checked or unchecked by the user.
Qt::ItemIsEnabled 32 The user can interact with the item.
Qt::ItemIsTristate 64 The item is checkable with three separate states.

所以总结如下,在你的子ITem,比如你的QtableWidget 为TabWidget
那么 TabWidget->item(row,col)->setFlags(Qt::ItemIsEditable); //这个第row行第col列的单元格只读
同理,Qt::ItemIsEditable表示可编辑,等等
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式