Qt QChart标题背景

Qt QChart title background

有人知道如何使 QChart 看起来像下图吗?

我创建了条形 QBarChart 并设置了它的背景颜色和条形颜色并删除了轴号,但我不知道如何将图表的标题设置成这样。

如何让标题的背景颜色和QChart一样宽?

我按照 Spinkoo 的建议做了。

在 MainWindow 构造函数中创建了 QLabel,并创建了用于将 QLabel 放置在 QChart 上的函数。该函数必须在 MainWindow 的构造函数之后调用,因为这样小部件和布局的所有大小和位置都是已知的。该函数在 MainWindow 的构造函数之后以及每次发生 Resize 事件时调用。

void MainWindow::positionLabel()
{
    // ui->widget inside which is QChart
    // ui->verticalLayout inside which is ui->widget
    QPoint pos = ui->widget->pos() + ui->verticalLayout->geometry().topLeft();

    // m_title pointer to QLabel which is created inside constructor
    m_title->setGeometry(pos.x() + 10, pos.y() + 20, ui->widget->width() - 20, CHART_TITLE_SIZE * 2.2);

    this->repaint();

    return;

}

这几乎是一个变通解决方案,可能应该有一种创建自定义 QChart class 的方法,它的外观与问题中的图表相同。所以,如果有人知道如何做到这一点,我将不胜感激。