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中。
Qt界面刷新大量数据时,界面卡死的解决方法以及QTableWidget和QTableView加载速度的比较
最近用Qt搞一个项目,里面有个功能是要加载XML日志文件的内容(大概1万行左右)然后在界面QTableWidget类型的表格里面显示由于日志文件的行数比较多,所以刷新到界面上时导致了界面卡死,刷新期间界面无法响应用户操作。而领导给我的要求是:第一:加载的时候界面不能卡死,界面要能够响应用户的操作。第二,在保证第一条的情况下,要尽可能快地加载并显示完日志的内容。第三,由于该项目是客户端,所以加载和显...
pyqt5 tablewidget 利用线程动态刷新数据
表格刷新数据的方法大概知道要用线程,所以就先尝试写了一个线程,然后每次都获取数据,然后直接通过这种方法来朝table里面更新数据。但是要点击鼠标才会出现更新的数据。
Qt工作笔记-QTableWidget插入QcomboBOx后,如何获取数据
话不多说,运行图如下:代码如下:widget.h#ifndef WIDGET_H #define WIDGET_H #include &amp;lt;QWidget&amp;gt; #include &amp;lt;QComboBox&amp;gt; #include &amp;lt;QStringList&amp;gt; #include &amp;lt;QMessageBox&amp;gt; namespace Ui { class Widget; }...
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
遍历QTableWidget中的数据
关于QTableWidget中数据的遍历,原本以为是很简单的事情,写完了之后运行却一直报错,最后折腾半天才发现原来是没有判断非空。写下来供其他同学参考,避免同样的错误。 QTableWidget *tableWidget=new QTableWidget(5,2); //5行2列 //添加数据 tableWidget->setItem(0,0,new QTableWidg
QT控件之Qtable Widget(3)——数据库相关
#include "dataclass.h" DataClass::DataClass() { } // 连接sqliteDB bool DataClass::open() { database=QSqlDatabase::addDatabase("QSQLITE"); database.setDatabaseName("./kzq_ldxDB.DB"); if(!d...
Qt之TableWidget、信号、槽
一、TableWidget组件 用法案例:----在表格上,选取一行后,可将该行的信息读取并显示到 LineEdit等组件上,便于后续的 修改操作 步骤: 1、在表格上 点击右键----Go to Slot----选Clicked 2、会自动产生 单击触发的函数: void TableWidget01Widget::on_tableWidget_clicked(QModelIndex index
QT QTableWidget空值检测问题
ui->tablewidget->item(0,0)->text()崩掉问题解决
QTableWidget获取一行数据
直接上代码: ui-&amp;gt;tableWidget-&amp;gt;setSelectionBehavior(QAbstractItemView::SelectRows); ui-&amp;gt;tableWidget-&amp;gt;setSelectionMode(QAbstractItemView::SingleSelection); connect(ui-&amp;gt;tableWidget, SIGNAL(cell...
Qt 将TableWidget表格数据保存到Excle详细介绍
结果图:       需要的头文件  需要根据小伙伴的数据进行变更,下面是tableWidget控件表格的数据保存到Excle       附上代码: ui-&amp;gt;progressBar-&amp;gt;show(); //进度条需要在ui文件中加个progressBar控件 ui-&amp;gt;progressBar-&amp;gt;setValue(0); //...
Qt tablewidget 获取表格一行内容并显示在下一行
  在构造函数使用前两句设置每次点击一个item能够选中一整行以及编辑item功能 pushButton槽里面获取当前点击的item行列数 然后通过循环使用text().toStdString()获取item的内容并显示到指定的item上 ui-&amp;gt;tableWidget-&amp;gt;setItem(now_row+1,now_column,e); //设置选择行为时每次选择一行 ...
QT QTablewidget联合mysql数据库的使用
QT QTablewidget联合mysql数据库的使用,实现了列表框与数据库的联合
Qt中的TableWidget基本用法
Qt中的TableWidget基本用法,方法来源于网络,供新手学习使用。
QTableWidget刷新数据后仍展示为刷新数据前的滚动条所在位置的信息
使用QTableWidget刷新数据后,经常会自动展示为table首行。为了显示刷新数据前所在的位置,解决办法如下:        先记住滚动条位置,刷新数据后,再重置滚动条位置。 伪代码如下: QScrollBar *scrollBar = verticalScrollBar(); int barPos = scrollBar->value();        //refresh
QTableWidget删除行出错
在调用removeRow删除QTableWidget的行时总会遇到一个问题,说tableWidget已经是isEmpty(),不能再删除了,但其实还有一行没删除,可是只要删除那最后的一行就出错.代码大致是这个样子的  1.这里是删除的代码,感觉应该没有问题的 for (int i = tableRowCount; i >= 0; --i) { ui.classfication_table-
Qt工作笔记-把QTableWidget数据存为XML,启动时加载XML
运行截图如下:添加好数据后保存:此时保存的XML,如下图:程序运行时会加载这些xml文件。代码如下:widget.h#ifndef WIDGET_H #define WIDGET_H #include &amp;lt;QWidget&amp;gt; #include &amp;lt;QFile&amp;gt; #include &amp;lt;QVector&amp;gt; #include &amp;lt;QXmlStreamWriter&amp;gt; ...
Qt:关于tableWidget的几个问题(遇到再更新)
1. 表格中插入combobox以及文本居中的问题 网上查了好多资料都说很麻烦难实现,干脆自己写,其实也就那么几行! void add_combobox(QTableWidget *table, int row, int column, QStringList textList, int currentIndex) { QComboBox *combox = new QComboBox()...
tablewidget筛选
完整的工程文件,开发环境window+qt4,利用tablewidget控件实现数据记录筛选、筛选后上下行选择显示正常。
Pyqt5--解析json并将内容显示在tableWidget
在开始写本博客的案例之前,梳理下功能点和知识点,方便查找和理解。 功能介绍: 1.生成json数据; 2.解析json数据并将内容显示在tableWidget中; 3.获取lineEdit中输入的内容,并将其显示在tableWidget中。 知识点梳理: 1.json json是一种易于阅读和编写的数据交换格式。 json.dumps()函数是将字典转化为字符串------json...
QTableWidget为一列数据排序,整形数据排序 #Qt Creator
问题: TableWidget有自己的Sort函数,setSortingEnabled() 可以让表头被点击的时候自动sort当前的列的数据,但是如果数据是以QString储存的话 在Sort数字时就出现了问题,比如说100会出现在20之前,因为它的第一位是1比2小 ==============================================================
Qt怎么把QTableWidget表格中的数据读取出来
Qt怎么把QTableWidget表格中的数据读取出来QString str = ui-&amp;gt;TableWidget-&amp;gt;item(row,column)-&amp;gt;text();//取出字符串int num = str.toInt();//转成intui-&amp;gt;TableWidget-&amp;gt;item(row,column)-&amp;gt;setText(QString(&quot;%1&quot;).arg(nu...
使QTableWidget 增加自动添加行,单击删除行的功能.
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
Oracle 删除数据时死机
项目中,有时候会把在一定时间区间的数据删除后,然后重新保存近新的,有时候会经常遇到执行delete语句,导致java程序卡住的情况,这时候通常是由于,之前的一些操作例如: 修改了数据,没有提交,这个时候数据库是将该条数据锁定的,其他对这条数据的操作是不能执行的,一直要等到锁定该数据的操作提交或者回滚。 这个功能是数据库从数据的安全角度考虑的,属于正常现象 这个时候的解决方法,可以在客户
[Qt]QTableWidget编辑cell更新界面,总跳转到第一页的问题
如题, 在编辑完某个cell之后,更新界面,总默认跳转到界面最顶端,这个很烦人,有时候你加了很多行东西,每次跳转都顶端,还得拉下来,在进行下一次编辑。 跟了一下代码,发现是因为,我更新界面的时候,使用了clear()这个函数, m_pTableWidget->clear(); //清除表中内容,包括标题头 我是每次更新,先clear(),然后又根据数据重刷的界面,而clear()会触发Qt
地磅串口通信读取数据
地磅串口通信,实时读取地磅数据,优化了结束读取的时候会出现卡死的问题。该代码不会卡死
qt的excel读取并显示到tablewidget的封装和demo
原博客地址:http://blog.csdn.net/frank3543/article/details/45042977 测试可使用,方便大家,有什么问题的请指出。我是qt5,配置照着项目应该没问题。
删除QWidget中的控件和清空QTableView表格内容用法
本文主要总结删除QWidget中的控件和清空QTableView表格内容用法,下面将详细讲述这两种用法的实现方式。1.1删除QWidget中的控件(函数removeWidget())要删除QWidget中的控件,可以现在QWidget用QVBoxLayout布局,然后用QVBoxLayout::removeWidget(QWidget*)函数删除指定名称的控件,删除后要用delete释放空间,否则...
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 qtablewidget与CSV文件的关系
Qt 读入.csv文件的(相当于excel)内容,并以qtablewidget显示,以及将Qtablewidget数据导出到.CSV文件
qt tablewidget 获取表头内容
​​​ui-&gt;TableWidget-&gt;horizontalHeaderItem(0)-&gt;text();//获取表头第1行第1列的内容 ui-&gt;TableWidget-&gt;horizontalHeaderItem(1)-&gt;text();//获取表头第1行第2列的内容 ui-&gt;TableWidget-&gt;horizontalHeaderItem(...
QtableWidget单元格设置和操作
ui->tableWidget->setItem(i,1,new QTableWidgetItem(StringTable[i]));//设置单元格内容 ui->tableWidget->item(i, 0)->setTextAlignment(Qt::AlignCenter);//设置居中 ui->tableWidget->item(i, 1)->setTextAlignment(Qt::A
Qt以tableWidget/tableView读取xml文件,并做降序排列等操作
利用Qt读取xml文件,一种是debug下的xml文件,一种是任意文件夹下的xml文件,并用tableWidget和tableView两种方式读取。这里的xml文件是学生成绩,所以还完成了平均分,总分,降序排列的操作。
为什么会卡死呢
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
Qt获取QTableWidget的cellWidget控件的行列信息
环境:win10,Qt5.9.7 +msvc2017 参考:https://blog.csdn.net/deverwh/article/details/52748490 问题:tablewidget每行显示一个通信口信息(串口和网口),最后一列嵌入一个QPushButton按钮,用于连接和断开串口网口。一开始考虑用tablewidget的clicked信号获取tablewidget的curre...
Qt的TableWidget的第一列添加CheckBox和添加Combobox
1.TableWidget 的第一列添加CheckBox 首先新建一个继承 QWidget 的GUI项目. 在ui界面添加一个 TableWidget 的控件,然后再类的构造函数里面初始化设置 TableWidget . TestMaintain::Test123(QWidget *parent) : QDialog(parent), ui(new Ui::Test123)...
QT控件之Qtable Widget(4)——获取选中列信息
QList&lt;QTableWidgetItem*&gt; items = ui-&gt;tableWidget-&gt;selectedItems(); int count = items.count(); for(int i = 0; i &lt; count; i++) { int row = ui-&gt;tableWidget-&gt;row(items.at(i)); ...
关于QTableWidget动态写入
关于Qt tableWidget动态写入 向tableWidget插入行 设置该行内容 代码如下ui->setupUi(this); this->setWindowTitle("Ruku"); ui->tableWidget->clear(); ui->tableWidget->setColumnCount(3);//只设置列数,行数动态中增加 ui->tableWidget->setHorizon
QT tableWidget 内容居中显示(不适合表格中是combox的)
ui-&gt;tableWidget-&gt;item(r,c)-&gt;setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);