我在更新QTableWidgetItems時遇到問題。我不會在第一次插入明白我在做什麼錯:(QTableWidget更新項目
代碼和解釋。
一步一步的問題。
- = OK,所有的第一單元填充。
- 更新首先插入的項目= OK,所有的第一個單元格更新
- 在第二次插入= OK,所有第二個單元格填滿
- 更新第二個插入的項目= OK,所有第二個單元格已更新。
- 更新第一個插入的項目= FAIL,所有的第一個單元格被更新,但是NEXT單元格的第一個表格是空的。爲什麼?
代碼:
void MainWindow::fillTable(QList<QByteArray> Info)
{
int Row = ui->clientsList->rowCount() - 1; //Starts from 0.
//Check if client row already exists.
for(int i = Row; i >= 0; i--)
{
if(ui->clientsList->item(i, 0)->text().contains(QString(Info[1])))
{
//Update row.
for(int u = 0; u < Info.count() - 1; u++)
{
ui->clientsList->setItem(i, u, new QTableWidgetItem(QString(Info[u + 1])));
}
return; //avoid new row insertion.
}
}
//Insert new row.
Row = ui->clientsList->rowCount() + 1;
ui->clientsList->setRowCount(Row);
for(int i = 0; i < Info.count() - 1; i++)
{
//Fill rows.
ui->clientsList->setItem(Row - 1, i, new QTableWidgetItem(QString(Info[i + 1])));
}
}
固定,不好意思!雖然它也會被社區看到.. – Nika