• 21584阅读
  • 17回复

如何在QTableWidget中加入复选框 [复制链接]

上一主题 下一主题
离线menglige
 

只看楼主 倒序阅读 楼主  发表于: 2006-11-17
请教高手,如何在列表中加入复选框呢?????
[ 此贴被XChinux在2006-12-24 10:56重新编辑 ]
离线浪漫天使
只看该作者 1楼 发表于: 2006-11-28
例子里面好像有的,自己找找看
离线menglige

只看该作者 2楼 发表于: 2006-11-28
恩 QTableWidgetItem::setCheckState ( Qt::CheckState state ) 我用这个实现的。
离线cavendish

只看该作者 3楼 发表于: 2006-11-28
QItemDelegate可以帮你在View中显示任何你想要的效果
离线lee51525125
只看该作者 4楼 发表于: 2008-07-29
还有没有更详细的操作呀
是不是要再item中加checkbox呀
只看该作者 5楼 发表于: 2008-07-30
楼主有没有出现这样的问题啊,我的QTableWidget用一个for循环加入5000多行,速度奇慢,怎末解决啊?
离线yxr52051801
只看该作者 6楼 发表于: 2008-07-30
重新定义QItemDelegate类的QWidget * QItemDelegate::createEditor ( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const  [virtual]虚函数 加入你的控件即可
离线simonetta
只看该作者 7楼 发表于: 2008-08-31
最近我也在处理这个问题。

用QItemDelegate重载paint,sizeHint,能够根据modle.index.data显示checkBox,效果还不错,但是不能编辑。 必须通过设置setEditTrigger来配置,且需要通过双击或其他方式激活。最大的问题就在这里,必须在编辑和正常模式切换,这个和我们常见的模式不一样。

有一个办法解决以上问题,就是openPersistEditor,但是没有item都需要调用。感觉很繁琐。

楼主的需求应该通过item的setCheckable就可以解决了吧。
我的blog
http://blog.csdn.net/solotek97/
离线5706046

只看该作者 8楼 发表于: 2009-07-10
有人搞定了没?
离线5706046

只看该作者 9楼 发表于: 2009-07-10
我已经解决加入复选框的,不知道这个效果合适不合适?



for(int i=0;i<10;i++)
        ui->table->setCellWidget(i,0,new QCheckBox());

    for(int i=0;i<10;i++)
        for(int j=0;j<10;j++)
        {
           QTableWidgetItem *item=new QTableWidgetItem(QString::number(i)+QString::number(j));
           ui->table->setItem(i,j,item) ;
       }
离线5706046

只看该作者 10楼 发表于: 2009-07-10
改了checkbox的内容
离线marxdenl
只看该作者 11楼 发表于: 2009-08-21
很好,很简洁!
merci~~~~
离线haulm

只看该作者 12楼 发表于: 2009-08-21
如果你是想操作应用较大的数据并且用于编辑和存储的,Widget不是好的选择,应该使用Model View。
离线huxueqing

只看该作者 13楼 发表于: 2009-09-15
怎么获得 checkbox的指针啊 我用 tablewidget->cellWIdget(row,column) 获得的指针不对呢
离线fangjuntan

只看该作者 14楼 发表于: 2010-04-01
如何获取checkbox的指针????我也想知道?
离线wywwh
只看该作者 15楼 发表于: 2010-04-10
做个标记
离线hanxing30

只看该作者 16楼 发表于: 2010-04-20
QWidget *w = tablewidget->cellWIdget(row,column) ;
if (typeid(*w) == typeid(QCheckBox))
{
    QCheckBox *cb = dynamic_cast<QCheckBox *>(w);
}
离线米尔利安

只看该作者 17楼 发表于: 2011-06-09
MARK~
我们在天上的父,愿人都尊你的名为圣。
愿你的国降临。
愿你的旨意行在地上,如同行在天上。
快速回复
限100 字节
 
上一个 下一个