返回QTableWidget里动态添加的QCheckBox的指针

如果指针是一个一个添加可以获得其句柄的话,那么就可以直接返回指针,但现在是用FOR循环添加,无法直接获得,所以得考虑使用返回指针强制转化。

下面是代码:

#include "tabletest.h"

#include <QtCore>

#include <QCheckBox>

#include <QMessageBox>

tableTest::tableTest(QWidget *parent, Qt::WFlags flags)

: QMainWindow(parent, flags)

{

ui.setupUi(this);

QCheckBox *checkbox = new QCheckBox("C&ase sensitive", this);

ui.tableWidget->setCellWidget(0,0,checkbox);

}

tableTest::~tableTest()

{

}

void tableTest::on_pushButton_clicked()

{

QCheckBox *checkbox = (QCheckBox*)ui.tableWidget->cellWidget(0,0);

if (checkbox->checkState() == Qt::Checked)

{

QMessageBox msg;

msg.setText("checked");

msg.exec();

}

if (checkbox->checkState() == Qt::Unchecked)

{

QMessageBox msg;

msg.setText("unchecked");

msg.exec();

}

}

你可能感兴趣的:(QTableWidget)