Qt QTableWidget 设置单元格不可编辑后恢复为可编辑状态

QTableWidget设置单元格不可编辑

for(int iRow = 0; iRow < rowCount; ++ iRow)
{
        for(int iColumn = 0; iColumn < columnCount; iColumn ++)
        {
            ui->tableWidget->item(iRow, iColumn)->setFlags(ui->tableWidget->item(iRow, iColumn)->flags() & ~Qt::ItemIsEnabled);
        }

}

利用 Qt::ItemIsEnabled 属性取非和单元格的flags()相与(&)即可将单元格设置为不可编辑不可选中状态。

将单元格恢复为可编辑状态

for(int irow = 0; irow < rowCount; ++ irow)
{
        for(int icolumn = 0; icolumn < columnCount; ++ icolumn)
        {
            ui->tableWidget->item(irow, icolumn)->setFlags(ui->tableWidget->item(irow, icolumn)->flags() | Qt::ItemIsEnabled);
        }
}

将Qt::ItemIsEnabled 属性和单元格的flags()相或(|),即可将单元格恢复为可选中可编辑状态。

你可能感兴趣的:(研究成果)