我有一张桌子。和一个项目。

如何只使用一个项目来填充表的一部分?

如果我将item设置为一个位置,然后采取item,我会在该位置丢失文本。和使用大量的项目是不舒服。

QTableWidgetItem *Type = new QTableWidgetItem;
if( line.contains("some"))
{
     Type->setText("some");
     ui->tableWidget->setItem(i, 0, Type);
}
else if( line.contains("shi"))
{
     Type->setText("shi");
     ui->tableWidget->setItem(i, 0, Type);
}
ui->tableWidget->takeItem(i, 0);
有帮助吗?

解决方案

您可以创建要插入到不同单元格的项目副本。这可以使用 clone :

QTableWidgetItem *Type1 = new QTableWidgetItem;

Type1->setText("some");
ui->tableWidget->setItem(row1, col1, Type1);

QTableWidgetItem *Type2 = Type1->clone(); // create a copy
Type2->setText("shi");
ui->tableWidget->setItem(row2, col2, Type2);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top