在QTableView中居中垂直标题的文本?

时间:2016-05-14 21:55:57

标签: c++ qt qtableview

我有QTableView,垂直标题可见。默认情况下,此标头已编号。但是,我无法弄清楚如何将文本(数字)居中。这是现在的样子(红色部分是标题):

enter image description here

这是我目前的代码。我尝试用CSS应用对齐属性,但它不起作用。其他所有东西似乎都是通过CSS(着色)工作,但不是文本对齐。

ui->tableView->verticalHeader()->setStyleSheet(QStringLiteral("QHeaderView::section{background-color: #e5cbcb; text-align: center;}"));

如何将数字居中?

2 个答案:

答案 0 :(得分:3)

使用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.

答案 1 :(得分:2)

仅使用样式表的另一种方法是:

setStyleSheet("QHeaderView { qproperty-defaultAlignment: AlignHCenter; }");

请参阅Qt文档中的Setting QObject Properties部分。