Search code examples
qtqtableviewqabstracttablemodel

Center align the contents of cells in QTableView


I've a QTableView.

Is there a way to align to the centre, all the cell contents of this view?

I'm not using any delegate. It's just an AbstractTableModel which is added as a model to a QTableView.

How should I align each cell content to the centre?

Thanks.


Solution

  • If you don't want to use custom delegates, you can set this in data function of your model implementation, using Qt::TextAlignmentRole:

    QVariant MyModel::data ( const QModelIndex & index, int role = Qt::DisplayRole )
    {
             if (role == Qt::TextAlignmentRole )
                 return Qt::AlignCenter;
             else
                 return QAbstractItemModel::data(index, role);
    }