QTableWidget表格中的数据读写操作
//读数据
QString str = ui->TableWidget->item(row,column)->text();//取出字符串
//item的参数row,column是行和列,都是从0 开始,注意不要越界。
int num = str.toInt();//如果需要的是整型数,可以转成int
//写数据
ui->TableWidget->item(row,column)->setText(QString("%1").arg(num));
QTableWidget中数据的遍历
for(i=0; i<rows; i++) // 取出每个格子的内容
for(j=0; j<column; j++){
if(ui->tableWidget->item(i,j) != NULL){//一定要先判断非空,否则会报错
QString tableText = ui->tableWidget->item(i,j)->text();
qDebug() << tableText;
}
}
注意 注意 注意:
遍历时判空一定不可以像下面这样写
if(ui->tableWidget->item(i,j)->text().isEmpty())
不能先将格子中的数据转化为字符串再判断空,这样会报错,我当时测试时候,程序运行到这里就会崩溃,原因就是如果10行的表格,只有一行有数据,那么从第二行开始,就是空的,空表格是没法用->text()转换的,更不能判断空,轻则报错,重则崩溃,别问为啥,我就是遇到程序崩溃的那个孩子
喜欢的可以扫码关注松鼠哥的公众号----嵌入式简单说