【发布时间】:2014-06-25 15:59:27
【问题描述】:
我想突出显示表格中第一列中具有相同值但在任何其他单元格中具有不同值的所有单元格。因此,例如,如果我的表中有两条记录:
test, 25, 15, 45
test, 25, 5, 45
我想突出显示值 15 和 5。
我尝试了以下代码,但无论我访问什么项目,我从项目调用中获得的文本始终是“测试”。
// Highlight differences in the data
for( int row=0; row < ui->table_Data->rowCount(); row++ )
{
qDebug() << "going through rows";
for( int remaining_rows=row+1; remaining_rows < ui->table_Data->rowCount(); remaining_rows++)
{
qDebug() << "going through remaining rows";
for( int column=0; column<ui->table_Data->columnCount(); column++ )
{
qDebug() << "going through columns";
qDebug() << row << ":" << remaining_rows << column;
qDebug() << ui->table_Data->itemAt(row,column)->text();
qDebug() << ui->table_Data->itemAt(remaining_rows,column)->text();
if( ui->table_Data->itemAt(row,column)->text().compare(ui->table_Data->itemAt(remaining_rows,column)->text()) != 0)
{
qDebug() << "data does not match";
ui->table_Data->item(row,column)->setBackground(Qt::yellow);
ui->table_Data->item(remaining_rows,column)->setBackground(Qt::yellow);
}
}
}
}
【问题讨论】:
标签: c++ qt user-interface qtablewidget