How can I write data into table grids?
-
Hi,
I've got really no plan how to write text into grids of my tableWidget. I've tried it in many different ways...
@ui->tableWidget->setText()
ui->tableWidget->addText()
ui->tableWidget->gridText
ui->tableWidget->rowText
ui->tableWidget->columnText
ui->tableWidget->...@Nothing.. What's the correct function to add text to row X, column X of my tablewidget?
-
Assuming your 'tableWidget' is a "QTableWidget":http://qt-project.org/doc/qt-4.8/qtablewidget.html then you need to construct a "QTableWidgetItem":http://qt-project.org/doc/qt-4.8/qtablewidgetitem.html for each cell and then call "setItem":http://qt-project.org/doc/qt-4.8/qtablewidget.html#setItem as clearly described in the documentation "here":http://qt-project.org/doc/qt-4.8/qtablewidget.html#details. A brief snippet would be something like:
@
...
for(int r=0; r<num_of_rows; r++){
for(int c=0; c<num_of_columns; c++){
QTableWidgetItem *newItem = new QTableWidgetItem(QString("%1,%2").arg(r).arg(c));
ui->tableWidget->setItem(r, c, newItem);
}
}
...
@Untested, but you get the general picture. Hope this helps ;o)
-
Yup, it helped!
@QTableWidgetItem *item1 = new QTableWidgetItem(QString("Test"));
ui->tableWidget->setItem(0, 1, item1);@
Works like a charm, thx! -
I'm trying to put this thing in a loop, but I get an error. Here's the code:
@ QTableWidgetItem *item[64];for (int r = 0; r < 64; ++r) { item[64] = new QTableWidgetItem(QStringList(sPinNames)); ui->tableWidget->setItem(r, 1, item[64]); }@
And the error:
@no matching function for call to 'QTableWidgetItem::QTableWidgetItem(QStringList)'@Help?
-
Made it already:
@//Pinnames
QStringList sPinNames;
sPinNames << "I1/H1"<<"I2/H2"<<"I3/H3"<<"I4/H4"<<"I5/H5"<<"I6/H6"<<"I7/H7"<<"I8/H8"
<< "J1/G1"<<"J2/G2"<<"J3/G3"<<"J4/G4"<<"J5/G5"<<"J6/G6"<<"J7/G7"<<"J8/G8"
<< "K1/F1"<<"K2/F2"<<"K3/F3"<<"K4/F4"<<"K5/F5"<<"K6/F6"<<"K7/F7"<<"K8/F8"
<< "L1/E1"<<"L2/E2"<<"L3/E3"<<"L4/E4"<<"L5/E5"<<"L6/E6"<<"L7/E7"<<"L8/E8"
<< "M1/D1"<<"M2/D2"<<"M3/D3"<<"M4/D4"<<"M5/D5"<<"M6/D6"<<"M7/D7"<<"M8/D8"
<< "N1/C1"<<"N2/C2"<<"N3/C3"<<"N4/C4"<<"N5/C5"<<"N6/C6"<<"N7/C7"<<"N8/C8"
<< "O1/B1"<<"O2/B2"<<"O3/B3"<<"O4/B4"<<"O5/B5"<<"O6/B6"<<"O7/B7"<<"O8/B8"
<< "P1/A1"<<"P2/A2"<<"P3/A3"<<"P4/A4"<<"P5/A5"<<"P6/A6"<<"P7/A7"<<"P8/A8";int r = 0; QTableWidgetItem *item[64]; for (r = 0; r < 64; ++r) { item[r] = new QTableWidgetItem(QString(sPinNames[r])); ui->tableWidget->setItem(r, 1, item[r]); }@
Thx anyways