PDA

View Full Version : QTablewidget does not work...



marcos.miranda
3rd May 2018, 15:22
Hello guys.

I am trying to insert data into a QTablewidget and one of the line is blank and the other data wrong (swapped), the code is below.
Could someone tell me where I'm going wrong?




int vnumRow=0;

ui->GrdAdvogados->setRowCount(0);

ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Roberval da Costa"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("777.555.222-88"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("3.222.555"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("3.456-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.3456"));


ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Paulo Roberto Rego"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("666.555.333-77"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("4.111.444"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("1.999-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.3333"));


ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Lucas Toreto"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("444.333.888-79"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("5.777.888"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("555.000-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.1122"));


//ui->GrdAdvogados->setRowCount(0);
ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Rafaela Butico"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("111.222.333-00"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("0.444.111"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("5.111-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.1111"));

// ORDENAR GRID OCORRENCIAS PELA COLUNA PAGINAS (Qt::AscendingOrder)
ui->GrdAdvogados->sortByColumn(0,Qt::AscendingOrder);



Follow image:

12816

Thanks in advance

marcos.miranda
4th May 2018, 15:52
Hello everyone.

Searching the Internet I found the following code and I decided to test, even though I did not see any relation.
And would you believe it, it worked !!!





int vnumRow=0;

ui->GrdAdvogados->setRowCount(0);
ui->GrdAdvogados->setSortingEnabled(false); // I Added this code.

ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Roberval da Costa"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("777.555.222-88"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("3.222.555"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("3.456-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.3456"));

ui->GrdAdvogados->item(vnumRow,1)->setTextAlignment(Qt::AlignCenter);
ui->GrdAdvogados->item(vnumRow,2)->setTextAlignment(Qt::AlignCenter);
ui->GrdAdvogados->item(vnumRow,3)->setTextAlignment(Qt::AlignCenter);
ui->GrdAdvogados->item(vnumRow,5)->setTextAlignment(Qt::AlignCenter);


ui->GrdAdvogados->insertRow(ui->GrdAdvogados->rowCount());
vnumRow = (ui->GrdAdvogados->rowCount() - 1);

ui->GrdAdvogados->setItem(vnumRow, 0, new QTableWidgetItem("Paulo Roberto Rego"));
ui->GrdAdvogados->setItem(vnumRow, 1, new QTableWidgetItem("666.555.333-77"));
ui->GrdAdvogados->setItem(vnumRow, 2, new QTableWidgetItem("4.111.444"));
ui->GrdAdvogados->setItem(vnumRow, 3, new QTableWidgetItem("SDS"));
ui->GrdAdvogados->setItem(vnumRow, 4, new QTableWidgetItem("1.999-PE"));
ui->GrdAdvogados->setItem(vnumRow, 5, new QTableWidgetItem("(81) 3421.3333"));

more code .....

// ORDENAR GRID OCORRENCIAS PELA COLUNA PAGINAS (Qt::AscendingOrder)
ui->GrdAdvogados->setSortingEnabled(true);
ui->GrdAdvogados->sortByColumn(0,Qt::AscendingOrder);




Can anyone with more experience explain this?

Thanks in advance.