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
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在QTableWidget中显示大数据量
在访问数据库后,在本地得到包含了数据的集合,然后获取数据总量;之后tableWidget的滑动条的滑动长度可以定义成 tableWidget的每行row的宽度 * 数据总量;再运动滑动条以定位到应显示的部分的第一个的行在tableWidget中的索引;以此索引可以定位到内存中的数据集对应的当前应被提取的第一个数据的索引;由于tableWidget的height是知道的,那么该显示的个数应也是可知的,即数据集该提取的长度也是可知的;只取这部分数据显示到tableWidget中。
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
关于QTableWidget插入数据库数据很慢的原因
一开我以为QTableWidget是因为数据量过大的原因导致的.因为有1000多条数据,还有6列.就1000*6,后来我测试发现时间都耽误在了insertRow()上,我恍然大悟,6000多条数据对于CPU来说也是小菜一碟啊.我估计是插入行的时候需要建表导致变慢,我索性把数据库中数据条数读出来,然后采取一次性插入,速度上确实提高了不少.以前在ARM板卡上运行要1-2分钟,现在只要几秒钟就OK了.此
Qt之TableWidget、信号、槽
一、TableWidget组件 用法案例:----在表格上,选取一行后,可将该行的信息读取并显示到 LineEdit等组件上,便于后续的 修改操作 步骤: 1、在表格上 点击右键----Go to Slot----选Clicked 2、会自动产生 单击触发的函数: void TableWidget01Widget::on_tableWidget_clicked(QModelIndex index
pyqt5 tablewidget 利用线程动态刷新数据
表格刷新数据的方法大概知道要用线程,所以就先尝试写了一个线程,然后每次都获取数据,然后直接通过这种方法来朝table里面更新数据。但是要点击鼠标才会出现更新的数据。
ExcelEngine
将tablewidget表中内容导入excel中,将excel数据导入到tablewidget中,和修改制定单元内容
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
qt tablewidget的显示问题
遇到一个奇葩问题,就是明明人家写的程序,
关于QTableWidget动态写入
关于Qt tableWidget动态写入 向tableWidget插入行 设置该行内容 代码如下ui->setupUi(this); this->setWindowTitle("Ruku"); ui->tableWidget->clear(); ui->tableWidget->setColumnCount(3);//只设置列数,行数动态中增加 ui->tableWidget->setHorizon
qt Qtablewidget某些单元格的控件不显示
for(int i = 0; i tableWidget->setCellWidget()
Qt连接QSqlite数据库,使用QTableWidget显示数据总结
Qt连接数据库: void ConnectDb::onConnectDb() { QMessageBox msgBox; dbconn=QSqlDatabase::addDatabase("QSQLITE");   dbconn.setDatabaseName("E:\\MyJob\\ConnectDb\\testDatabase.db");  if(!dbconn.open())
遍历QTableWidget中的数据
关于QTableWidget中数据的遍历,原本以为是很简单的事情,写完了之后运行却一直报错,最后折腾半天才发现原来是没有判断非空。写下来供其他同学参考,避免同样的错误。 QTableWidget *tableWidget=new QTableWidget(5,2); //5行2列 //添加数据 tableWidget->setItem(0,0,new QTableWidg
Qt tablewidget 获取表格一行内容并显示在下一行
  在构造函数使用前两句设置每次点击一个item能够选中一整行以及编辑item功能 pushButton槽里面获取当前点击的item行列数 然后通过循环使用text().toStdString()获取item的内容并显示到指定的item上 ui-&amp;gt;tableWidget-&amp;gt;setItem(now_row+1,now_column,e); //设置选择行为时每次选择一行 ...
CFileDialog会改变程序的默认执行路径
今天在用MFC写程序的时候,碰到一个奇怪的问题:在我用CFileDialog选择文件后,程序的其它地方,就提示我说找不到某个文件;这个文件的路径,我是用hard code的方法硬写在程序里方便测试的。 如果这个路径我用的是绝对路径,并不会出问题;如果是用相对路径,则会提示找不到文件。 查了一会MSDN,原来用CFileDialog打开文件后,程序默认的执行路径就得到了改变。这样的话,我在用CFil
tablewidget的属性及用法
1. 将表格变为禁止编辑 在默认情况下,表格里的字符是可以更改的,比如 双击一个单元格,就可以修改原来的内容,如果想禁止用户的这种操作,让这个表格对用户只读,可以这样: ? 1 tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
Qt 读写Excel,并显示到tablewidget
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
QT中设置tablwidget内容不可更改
将表格变为禁止编辑 在默认情况下,表格里的字符是可以更改的,比如双击一个单元格,就可以修改原来的内容,如果想禁止用户的这种操作,让这个表格对用户只读,可以这样: tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); QAbstractItemView.NoEditTriggers是QAbstractIte
Qt QTableWidget 点击事件 重复问题的解决
在做一个Qt项目时遇到一个小问题
Qtablewidget 无法获取单元格的值
#include "dialog.h" #include "ui_dialog.h" #include Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog) { ui->setupUi(this); Qt::WindowFlags flags=Qt::Dialog;
Qt 读写文件,并显示到tablewidget
//将表格数据写入文件 void DiagramTableItem::saveTable() {     QString fileName = QFileDialog::getSaveFileName(0,tr("保存文件"),                                                 tr("/root/Projects/product"),
关于QTableWidget的item所占内存的释放问题
与之前的文章背景类似,还是关于QTableWidget中的数量众多的item所占内存比较多,用完要释放的问题。 现在有两个问题: 1 是什么时候释放? 2 如何释放 我们先看第一个问题,因为我现在的程序里面是定期刷新table,每次加载大量的数据,所以如果不清除之前的内存,就会使内存一直申请得不到释放最终导致内存泄露。当次显示完就释放显然不合适,因为item被delete掉后表中的内容就也
Qt tableWidget item 元素居中的代码设置
先找到对应位置的元素,设置setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);icon的好像没找到 for (int i=0;i<3;i++) { for (int j=0;j<3;j++) { ui->tableWidget_2->setItem(i,j,new QTableW
QTableWidget的信号函数
QTableWidget on_tableWidget_cellClicked
QT中QTableWidget清空或删除内容功能
今天使用到了QT中QTableWidget的清空和删除功能,特地整理出。 参考https://blog.csdn.net/qq_16093323/article/details/79226349 如下: 1、void QTableWidget::clear() [slot]   Removes all items in the view. This will also remove all...
QT编写的TableWidget分页效果
QT TableWidget 分页效果 源代码 需要就拿走……
qt 中如何向QTableWidget里大量添加数据?
实验说明:通过一个按钮,选择一张图片,将图片添加到表格里,并且添加1000条该数据
QTableWidget获取选中行内容
QList&amp;lt;QTableWidgetItem*&amp;gt; items = ui-&amp;gt;tableWidget-&amp;gt;selectedItems(); int count = items.count(); for(int i = 0; i &amp;lt; count; i++) { int row = ui-&amp;gt;tableWidget-&amp;gt;row(items.at(i)); ...
QT QTablewidget联合mysql数据库的使用
QT QTablewidget联合mysql数据库的使用,实现了列表框与数据库的联合
[Qt]QTableWidget编辑cell更新界面,总跳转到第一页的问题
如题, 在编辑完某个cell之后,更新界面,总默认跳转到界面最顶端,这个很烦人,有时候你加了很多行东西,每次跳转都顶端,还得拉下来,在进行下一次编辑。 跟了一下代码,发现是因为,我更新界面的时候,使用了clear()这个函数, m_pTableWidget->clear(); //清除表中内容,包括标题头 我是每次更新,先clear(),然后又根据数据重刷的界面,而clear()会触发Qt
PyQt5笔记之表格(Table Widget)
1.在Qt Designer中设计一个简单窗口,加入Table Widget模块2.生成.py文件3.在.py文件中你可以找到以下代码 self.tableWidget.setObjectName(&quot;tableWidget&quot;) self.tableWidget.setColumnCount(0)#控制表格有几列 self.tableWidget.set...
QT tableWidget 内容居中显示
ui-&amp;gt;tableWidget-&amp;gt;item(i,11)-&amp;gt;setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
Qt 将TableWidget表格数据保存到Excle详细介绍
结果图:       需要的头文件  需要根据小伙伴的数据进行变更,下面是tableWidget控件表格的数据保存到Excle       附上代码: ui-&amp;gt;progressBar-&amp;gt;show(); //进度条需要在ui文件中加个progressBar控件 ui-&amp;gt;progressBar-&amp;gt;setValue(0); //...
QT的tablewiget的双击单元格获取内容
本来昨晚想写一个双击table中的某个Item,便活的这个item所在的记录,然后产生事件的一个小程序。但是却发现了一个让我很无语的问题。我用文档里提供的Itemclicked()和ItemdoubleClicked()信号无论如何都连不上。但发现其他的CELL信号和 itemSelectionChanged ()信号是可以的。郁闷的我百思不得其解。 跑了QT论坛上问,还没人给出原因。索性今上午
QTableWidget添加数据后,中间有空白行
在网QTabWidget添加数据时,发现中间行空白,首行和尾行都有数据,查了好久才找到原因。原因是我设置了QTableWidget的自动排序功能,取消掉自动排序,再添加数据就正常了。...
为什么会卡死呢
public Form1()rn rn this.Paint += new PaintEventHandler(f1_Paint);rn rn rn private void f1_Paint(object sender, PaintEventArgs e)rn rn Graphics g = e.Graphics;rn Random r = new Random();rn int m;rn rn while (true)rn rn m = r.Next(4);rn switch (m.ToString("")) rn rn case "3": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 30, 200, 35, 200); break;rn case "2": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 60, 200, 65, 200); break;rn case "1": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 90, 200, 95, 200); break;rn case "0": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;rn default: g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;rn // default: break;rn rn System.Threading.Thread.Sleep(1000);rn rnrnrn为什么运行起来会卡死................不是sleep了吗rnrnrn
PyQt的QTableWidget的全面总结与归纳
这几天用QTableWidget用得很多,查了很多资料,发现大多数都不是很全,有时候查资料查得很辛苦;另一方面,以防以后自己忘了这些知识,所以在这里就把我所接触到的,所看到的都归纳在这里。 首先QTableWidget是继承于QTableView,QTableWidget是QT程序中常用的显示数据表格的空间;它跟QTableView的主要区别是QTableView可以使用自定义的数据模型
Qt发布Release版本注意事项
1.main() 函数,加入如下代码: QApplication::addLibraryPath("./"); 2.若有数据库,比如sqlite,一定要写如下语句, DB = QSqlDatabase::addDatabase("QSQLITE");3.发布时,使用命令 windeployqt 即可自动加入相关依赖。
Python入门九:QTableWidget 组件使用
目录1、创建表单2、设置表单样式3、表格表头的显示与隐藏4、去除鼠标点击的选项会出现虚框------------------------------------------------1、创建表单设置列数:tableWidget.setColumnCount(3) 设置行数:tableWidget.setRowCount(4)2、设置表单样式设置默认列宽:tableWidget.horizonta...
QTableWidget用法详解(修改整理版本)
QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。说到QTableWidget,就必须讲一下它跟QTabelView的区别了。QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并
QTableWidget删除操作
QTableWidget删除选定行 1,void freedomCapture::deleteRotationAxis() { if (ui->tableWidgetTriangle->currentRow() != -1) { ui->tableWidgetTriangle->removeRow(ui->tableWidgetTriangle->currentRow()); rowT
文章热词 数据线性分类 聚类算法pca数据实例 图像修复数据项目 实战数据时间属性 实战数据文本特征
相关热词 c++65535为什么会转成-1 c++ 数据会丢失 数据库 android为什么会出现俩图标 为什么学python 狗熊会python培训班