Центрирование текста вертикального заголовка в QTableView?
У меня есть QTableView
с вертикальным заголовком видимым. По умолчанию этот заголовок пронумерован. Я не могу понять, как центрировать текст (цифры), хотя. Вот как это выглядит сейчас (красные части - заголовки):
Вот код, который у меня сейчас есть. Я попытался применить свойство выравнивания с помощью CSS, но оно не работает. Все остальное работает через CSS (раскраска), но не выравнивание текста.
ui->tableView->verticalHeader()->setStyleSheet(QStringLiteral("QHeaderView::section{background-color: #e5cbcb; text-align: center;}"));
Как я могу центрировать числа?
2 ответа
Решение
Используйте setDefaultAlignment()
С этими флагами:
Qt::AlignLeft 0x0001 Aligns with the left edge.
Qt::AlignRight 0x0002 Aligns with the right edge.
Qt::AlignHCenter 0x0004 Centers horizontally in the available space.
Qt::AlignJustify 0x0008 Justifies the text in the available space.
Альтернативный способ использования только таблицы стилей:
setStyleSheet("QHeaderView { qproperty-defaultAlignment: AlignHCenter; }");
Смотрите раздел Установка свойств QObject в документации Qt.