1. 程式人生 > >Qt-QML-Charts-ChartView-編譯錯誤-ASSERT: "!"No style available without QApplication!

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