Как вставить QChartView в форму с помощью Qt Designer?

Я хочу добавить QChart в форму. Но я не могу найти его в Виджет-боксе. Поэтому я создал его в коде. Как вставить его в QWidget или QFrame или что-то еще?

Я хочу установить область этого виджета в QtDesigner.

Ответ 1

Вариант 1: повышен

Я предполагаю, что вы имеете в виду вставку QChartView, потому что QChartView наследуется от QGraphicsView, это было бы хорошим вариантом, для этого мы делаем следующее:

  1. сначала добавьте QT += charts в .pro
  2. Поместите QGraphicsView в дизайн.
  3. Щелкните правой кнопкой мыши QGraphicsView и выберите Promote to...
  4. При выполнении вышеизложенного появляется меню, в меню оно должно быть установлено в QChartView в Promoted Class Name и QtCharts в Header file, затем нажмите кнопку add и, наконец, нажмите promote.

Скриншоты некоторых шагов:

[3]

enter image description here

[4,1]

enter image description here

[4.2]

enter image description here

То же самое можно сделать, используя QWidget в качестве основы вместо QGraphicsView.

Почему тот или иной виджет выбран в качестве базы?

Он выбран потому, что Qt Designer через moc устанавливает определенные свойства по умолчанию, и если виджет не имеет этого метода, он не будет компилироваться. поскольку все виджеты наследуются от QWidget, это будет основой для любого нового виджета, чтобы продвигать его в Qt Designer.

По следующей ссылке вы найдете пример.


Вариант 2: плагин QtChart

Другой вариант - скомпилировать плагин QtChart для QtDesigner, для этого вы должны загрузить 5 файлов по следующей ссылке:

enter image description here

Затем вы выполняете следующее:

qmake
make
sudo make install

В конце вы можете получить доступ к QtCharts::QChartView в Qt Designer

enter image description here