我有一个包含多个数据系列的数据源(前面未知)。
我想在qml LineSeries
中添加ChartView
,所以我试图勾选'像这样的qml的C ++方面:
// data source
...
Q_PROPERTY(QtCharts::QChartView *chart READ chart WRITE setChart NOTIFY chartChanged)
public slots:
void setChart(QtCharts::QChartView *newChart) {
qDebug() << "received new chart to draw on:" << newChart;
}
在qml中,我将图表或多或少地发送到C ++:
...
ChartView { id: chart
...
}
Component.onCompleted: { backend.setChart(chart) }
现在setChart
被称为allright,但类型似乎不匹配:传入的图表指针为空:
> received new chart to draw on: QWidget(0x0)
将输入类型放宽到普通QObject*
,向我显示传入对象的实际类型为QtQuick::DeclarativeChart
。
我应该如何将chart
项发送到我的C ++模型? (或者我应该使用完全不同的方法?)
答案 0 :(得分:0)
如果您需要更新图表轴和序列,则应将其发送到c ++并更新它们。我写了一个示例,您可以看一下,我认为它满足了您的需求。 在此示例中,我将c ++语音示例从QWidget图表转换为QML图表,但是系列信息正在c ++中更新: QML chart updating in c++ Example