Qt-QML-Charts-ChartView-编译错误-ASSERT: "!"No style available without QApplication!

      今天使用QML的ChartView进行绘制图表的时候出现了以上错误,Qt Forum上的这个问题两年前都有人遇到了,现在都没有人给出答案,不知那个老外最后怎么解决了,今天把例子敲打出来后决定写个东西,以免以后再次遇到还得查找很久。

      其实QML的官方示例上有个关于ChartView的Demo,在PC机上可以完美运行,接下来就是找不同了。

      原因有二:

一、

            1.QML 引擎有两种启动方式:

a)QQuickView 搭配Item

QQuickView view;

view.setResizeMode(QQuickView::SizeRootObjectToView);

view.setSource(QUrl("qrc:///xxx.qml"));

          view.show();

b)QQmlApplicationEngine搭配window

QQmlApplicationEngine engine;

engine.load(QUrl(QStringLiteral("qrc:/xxx.qml")));

 if (engine.rootObjects().isEmpty())

return -1;

采用QApplication app(argc, argv)代替QGuiApplication app(argc, argv),并且和第一种启动方式搭配使用。

二、.pro文件添加 QT += charts qml quick 

猜你喜欢

转载自blog.csdn.net/qq_35185913/article/details/82219790