QT 报的QTableWidget的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT 报的QTableWidget的问题相关的知识,希望对你有一定的参考价值。

请教各位高手,Linux上的Qt程序一启动就崩溃,报“cannot insert an item that is already by other QTablewidget”t错。代码都没有改过,昨天都还好好的,今天一编译运行就报错,咋回事啊?

参考技术A table.setItem(row, column, item)。调用这个函数的时候,每次传入的item参数应该是new出来的,而不是用一个局部变量。 参考技术B
for(int i=0;i<100;i++)
int count = pTableWidget->rowCount();
pTableWidget->insertRow(count);
QTableWidgetItem* item = new QTableWidgetItem;
item->setText("abc");
for(int j=0;j<4;j++)

pTableWidget->setItem(i, j, item);



改成:
for(int i=0;i<100;i++)
int count = pTableWidget->rowCount();
pTableWidget->insertRow(count);
for(int j=0;j<4;j++)

QTableWidgetItem* item = new QTableWidgetItem;
item->setText("abc");
pTableWidget->setItem(i, j, item);

参考技术C 你好,我遇到了同样的问题。请问你解决了吗? 参考技术D 上代码吧!这个都说不清楚的。。。基本看上去是指针越界。

Qt连接QTableWidget和QGLWidget

【中文标题】Qt连接QTableWidget和QGLWidget【英文标题】:Qt connection QTableWidget and QGLWidget 【发布时间】:2014-11-08 11:26:58 【问题描述】:

我是 Qt 的新手,我正在处理一项任务。我创建了一个 QGLWidget 并尝试将它与 QTablewidget 连接起来。我想从 QTableWidget 中获取一个变量,以便在 QGLWidget 中绘图。问题是有两个类,一个用于 QGLWidget,一个用于 ui(包含 QTableWidget 的 QDialog),我不知道如何从 QTableWidget 获取输入。我可以使用信号和插槽,或者我可以从 QGLWidget 访问 ui,我该怎么做?如有任何想法,我将不胜感激。

【问题讨论】:

【参考方案1】:

您可以在没有信号和插槽的情况下执行此操作。使用setter,可以设置不同类型的变量,在GLWidget里面使用:

#ifndef GLWIDGET_H
#define GLWIDGET_H

#include <QGLWidget>
#include <QDebug>

class GLWidget : public QGLWidget


    Q_OBJECT
public:
    explicit GLWidget(QWidget *parent = 0);

    void setValue(int i);

signals:

public slots:

private:
    int member;

;

#endif // GLWIDGET_H

Cpp:

#include "glwidget.h"

GLWidget::GLWidget(QWidget *parent) :
    QGLWidget
    (parent)



void GLWidget::setValue(int i)

    member = i;
    qDebug() << i;

用法:

void MainWindow::on_tableWidget_clicked(const QModelIndex &index)


    GLWidget *wgt = new GLWidget;
    wgt->setValue(index.data().toInt());
    wgt->show();

【讨论】:

以上是关于QT 报的QTableWidget的问题的主要内容,如果未能解决你的问题,请参考以下文章

qt 中Qtable widget中如何加一个表

Qt QTableWidget 列调整大小

如何更改水平标题的高度(QTableWidget)

在qtable中打开csv文件时程序关闭

只允许 QTableWidget 列中的值

QT QTableView(基于QStandardItemModel用法)操作详解