Заголовок Qt QChart
Кто-нибудь знает, как заставить QChart выглядеть на картинке ниже?
Я создал панель QBarChart и установил ее цвет фона и цвет панели, а также удалил номера осей, но я не знаю, как установить заголовок диаграммы так, как это выглядит.
Как заставить фон заголовка иметь другой цвет и иметь такую же ширину, что и QChart?
1 ответ
Я сделал так, как предложил Спинку.
Создал QLabel в конструкторе MainWindow и создал функцию, которая используется для позиционирования 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, который будет выглядеть как диаграмма из вопроса. Так что, если кто-то знает, как это сделать, я буду признателен.