QT表格、实现选择复选框所在单元格点击时改变复选框状态
主要是开始以为使用cellClicked 或者itemClicked 能解决,但是发现,使用这两个信号后,不能选择复选框了,只能通过选择单元格来实现复选框的勾选和去勾选。
所以来记录一下:
绑定信号和槽函数
connect(this->q_table, &QTableWidget::cellPressed, this, &user_management::CheckTheCheckbox); //当复选框所在的单元格被单击后,反向修改复选框状态
槽函数的定义
/*勾选复选框,当单元格被单击是做出判断,只有点击了复选框所在的单元格才会操作复选框,选择了的去掉选择,没有选择的勾选上*/ void user_management::CheckTheCheckbox(int x, int y) { if (y == 0) { if (this->q_table->item(x, y)->checkState()) { this->q_table->item(x, y)->setCheckState(Qt::Unchecked); //反向选择复选框 } else { this->q_table->item(x, y)->setCheckState(Qt::Checked); //选择复选框 } } }