tablewidget中数据改变程序为什么会卡死?

我想实现的功能是lineedit中文本与tablewideget中文本进行比对,而且在表格中数据改变后要再进行一次比对。
编写上面没有显示错误,运行后改变tablewidget中数据后程序就会卡死,求大牛!!!是我槽函数用错了吗?

void MainWindow::on_tableWidget_itemChanged(QTableWidgetItem *item)
{
QString str1 = ui->lineEdit->text();
QString tabeDate[ui->tableWidget->rowCount()][ui->tableWidget->columnCount()];//将表格中数据存入数组
int i,j=0;
for(i=0; itableWidget->rowCount(); i++)
{
for(j=0; jtableWidget->columnCount(); j++)
{
if(ui->tableWidget->item(i,j)!=NULL)//注意检查非空,否则会报错
{
tabeDate[i][j] = ui->tableWidget->item(i,j)->text();
}
}
}//遍历数组

for(i = 0; i < ui->tableWidget->rowCount(); i++)
{
    while (tabeDate[i][0] != "")
    {
    if(tabeDate[i][0] == str1)
        ui->tableWidget->setItem(i,1,new QTableWidgetItem("OK"));
    else
        ui->tableWidget->setItem(i,1,new QTableWidgetItem("NG"));
    }
    break;

}

}

qt
0
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
在QTableWidget中显示大数据量
在访问数据库后,在本地得到包含了数据的集合,然后获取数据总量;之后tableWidget的滑动条的滑动长度可以定义成 tableWidget的每行row的宽度 * 数据总量;再运动滑动条以定位到应显示的部分的第一个的行在tableWidget中的索引;以此索引可以定位到内存中的数据集对应的当前应被提取的第一个数据的索引;由于tableWidget的height是知道的,那么该显示的个数应也是可知的,即数据集该提取的长度也是可知的;只取这部分数据显示到tableWidget中。
Qt界面刷新大量数据时,界面卡死的解决方法以及QTableWidget和QTableView加载速度的比较
最近用Qt搞一个项目,里面有个功能是要加载XML日志文件的内容(大概1万行左右)然后在界面QTableWidget类型的表格里面显示由于日志文件的行数比较多,所以刷新到界面上时导致了界面卡死,刷新期间界面无法响应用户操作。而领导给我的要求是:第一:加载的时候界面不能卡死,界面要能够响应用户的操作。第二,在保证第一条的情况下,要尽可能快地加载并显示完日志的内容。第三,由于该项目是客户端,所以加载和显...
关于QTableWidget插入数据库数据很慢的原因
一开我以为QTableWidget是因为数据量过大的原因导致的.因为有1000多条数据,还有6列.就1000*6,后来我测试发现时间都耽误在了insertRow()上,我恍然大悟,6000多条数据对于CPU来说也是小菜一碟啊.我估计是插入行的时候需要建表导致变慢,我索性把数据库中数据条数读出来,然后采取一次性插入,速度上确实提高了不少.以前在ARM板卡上运行要1-2分钟,现在只要几秒钟就OK了.此
QT TableWidget的使用1:简单使用
其实就是几行. 创建行,从第一行开始创建   ui->tableWidget->insertRow(i); //i代表行数,从0开始 ui->tableWidget->setItem(i,j,new QTableWidgetItem(QString::number(D[i].x))); 第I行第J列,最后传的数值只能为QString 一个实例,从ex
QTabWidget bug导致程序崩溃
<br />QTabWidget 使用的时候如果读取的数据不存在     或者读取的数据项在setitem的时候没有写入数据,则程序会崩溃<br />比如:<br />//ui->tableWidget->setItem(row,0,new QTableWidgetItem(tr("***")+ui->comboBox_6->currentText().trimmed()+tr("***")+ui->tableWidget->item(currentrow,0)->text())); ui
ExcelEngine
将tablewidget表中内容导入excel中,将excel数据导入到tablewidget中,和修改制定单元内容
关于QTableWidget的item所占内存的释放问题
与之前的文章背景类似,还是关于QTableWidget中的数量众多的item所占内存比较多,用完要释放的问题。 现在有两个问题: 1 是什么时候释放? 2 如何释放 我们先看第一个问题,因为我现在的程序里面是定期刷新table,每次加载大量的数据,所以如果不清除之前的内存,就会使内存一直申请得不到释放最终导致内存泄露。当次显示完就释放显然不合适,因为item被delete掉后表中的内容就也
Qt连接QSqlite数据库,使用QTableWidget显示数据总结
Qt连接数据库: void ConnectDb::onConnectDb() { QMessageBox msgBox; dbconn=QSqlDatabase::addDatabase("QSQLITE");   dbconn.setDatabaseName("E:\\MyJob\\ConnectDb\\testDatabase.db");  if(!dbconn.open())
Qt发布Release版本注意事项
1.main() 函数,加入如下代码: QApplication::addLibraryPath("./"); 2.若有数据库,比如sqlite,一定要写如下语句, DB = QSqlDatabase::addDatabase("QSQLITE");3.发布时,使用命令 windeployqt 即可自动加入相关依赖。
qt tablewidget的显示问题
遇到一个奇葩问题,就是明明人家写的程序,