Qt-QML-Charts-ChartView-編譯錯誤-ASSERT: "!"No style available without QApplication!
阿新 • • 發佈:2018-11-08
今天使用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