如何在QTableWidget中实现QCheckBox

来源:互联网 发布:关系数据库的基本结构 编辑:程序博客网 时间:2024/05/21 19:47

以下是我的cpp文件内容:

#include "widget.h"#include "ui_widget.h"#include <QTableWidgetItem>#include <QCheckBox>#include <QHBoxLayout>#include <QDebug>Widget::Widget(QWidget *parent) :    QWidget(parent),    ui(new Ui::Widget){    ui->setupUi(this);    /*这是ui文件中没有放qtablewidget控件时在里面插入QCkeckBox的方法*///    QTableWidget *table=new QTableWidget(5,5);//    QCheckBox *abc=new QCheckBox("");//    table->setCellWidget(0,0,abc);//    QHBoxLayout *mainLayout = new QHBoxLayout;//    mainLayout->addWidget(table);//    setLayout(mainLayout);    /*这是ui文件中已经放了QtableWieget控件时在里面插入QCheckBox的方法*///    QCheckBox *abc=new QCheckBox("");//    ui->tableWidget->setColumnCount(2);//    ui->tableWidget->setRowCount(2);//    ui->tableWidget ->setCellWidget(0,0,abc);    /*这是利用QTableWidget自带的属性插入QCheckBox的方法,据说前两中方法不能读取单选框的选择状态(我测试了一下,发现这种说法并不完全对,尽管失败了)而这种可以读取状态的方法是利用QTableWidget::cellChanged()函数,检查单元格内容的变化,然后连接此信号,在槽函数中检测checkBox的状态。connect(tableWidget, SIGNAL(cellChanged(int,int)), this, SLOT(changeTest(int, int))); void changeTest(int row, int col) {     if(tableWidget ->item(row, col)->checkState() == Qt::Checked) //选中         ...     else         ... }*/


    QTableWidgetItem *asd=new QTableWidgetItem();
    asd->setCheckState(Qt::Checked);
    ui->tableWidget->setColumnCount(3);
    ui->tableWidget->setRowCount(3);
    ui->tableWidget->setItem(0,0,asd);


}

Widget::~Widget()
{
    delete ui;
}


 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 大股东质押爆仓怎么办 买的股票跌停了怎么办 刚买了万科天地怎么办 所持股票停牌怎么办 武钢股份退市股票怎么办 买了退市的股票怎么办 国际e庄租期到了怎么办 被汉藏文化骗了怎么办 杏仁吃多了中毒怎么办 出轨怀孕了该怎么办呢 瑞安医保卡丢了怎么办 包裹一直在揽收怎么办 揽收超时的快件怎么办 快递被别人偷了怎么办 行驶证副本丢了怎么办 眼睛进了石灰粉怎么办 高铁网上没票了怎么办 限行尾号是字母怎么办 手指被刺扎肿了怎么办 手上进了小刺怎么办 招投标标书丢了怎么办 冒险岛2装备红了怎么办 宝宝屁股腌红了怎么办 宝宝肛门红痒怎么办啊 宝宝屁屁溃烂了怎么办 脸过敏起红疙瘩怎么办 一岁宝宝屁股红怎么办 屁眼肉凸出来了怎么办 陶笛声音变闷了怎么办 吃三七粉上火了怎么办 红枣核吞下去了怎么办 话梅核吞下去了怎么办 芒果和海鲜吃了怎么办 小孩咳嗽喉咙有痰怎么办 4岁宝宝喉咙有痰怎么办 20天新生儿有痰怎么办 孩子嗓子老是有痰怎么办 买的哈密瓜不甜怎么办 吉他琴颈变形了怎么办 hcg值长得慢怎么办 蚊子老在耳边叫怎么办