我有一个类创建随机数据,我想在主窗口的tableview中显示。QtableWidget不显示数据
我通过Designer添加了一个表格视图到主窗口并将其称为tblData。 我怀疑这个问题与此有关,因为当我调用构造函数时,具有一些实现的ui文件已经存在。
我所采取的“详细说明”部分从http://qt-project.org/doc/qt-5/qtablewidget.html为指导....
然而,该表为空。我不明白为什么......非常感谢。
include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QStringList headers;
headers << "Datapoints";
Dataset *myData;
myData = new Dataset();
myData->createRandomData(10); // create a ten element vector
QVector<int> data;
data = myData->getDataVector(); // data vector created in class Dataset
qDebug() << data;
int i;
for (i = 0 ; i < data.size() ; i++){
QString datapoint;
datapoint = QString::number(data[i]);
QTableWidgetItem * newItem = new QTableWidgetItem(datapoint);
ui->tblData->setItem(i, 0, newItem); // works not
qDebug() << datapoint; // works
}
}
MainWindow::~MainWindow()
{
delete ui;
}
如果调用'ui-> tblData-> setRowCount(data.size()),该怎么办? ui-> tblData-> setColumnCount(1);'在'for'循环之前? – vahancho 2014-09-27 14:23:52
魔法!这工作。你会如此友善地将它添加为答案,以便我可以将其标记为已解决?但老实说:我不明白为什么初始化每个元素为QTableWidget是不够的... – RogerWilco77 2014-09-27 20:14:59