获取单元内容
使用Item()函数,而不是ItemAt()函数来获取,如下
QString infoString;
infoString = ui->tableWidget->item(0,0)->text();
表示获取表中第一行,第一列的元素的内容(注意是从0开始)
设置单元内容
一开始想当然的调用了以下的函数,来设置单元item中的值:
QStringList list = MSG.split("#");
ui->tableWidget->item(0,0)->setText(list.at(0));
结果系统报错“底层由于接收到操作系统的信号而停止”
这种报错的原因:存在野指针,或者是没有位指针对象分配内存,或者是错误地释放(free)了内存。
去查看item函数的说明
用 qDebug()<< ui->treatement->item(0,0)去输出Item函数的返回值,发现是0X0,没有获取到item的指针,所以在调用setText()时就发生了报错。
改用setItem()函数去设置单元的值就不存在这个问题:
ui->treatement->setItem(0,0,newQTableWidgetItem(list.at(0));