我在一个新的QtQuick2项目中使用QSplashScreen有困难。以下是‘main.cpp’项目:
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QPixmap pix("./test80.png");
QSplashScreen splash(pix);
splash.show();
QTest::qSleep(5000);
splash.hide();
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/teste/main.qml"));
viewer.showExpanded();
return app.exec();
}这段代码编译。当我运行它时,应用程序输出显示了以下消息:QWidget: Cannot create a QWidget without QApplication。很明显,QGuiApplication没有继承QApplication的遗产,所以我很困惑。
编辑:将QGuiApplication改为QApplication似乎有效,但我担心QApplication会缺少QtQuick2所需的东西。
发布于 2013-07-12 22:23:57
事实上,情况正好相反: QApplication继承了QGuiApplication。您需要前者使用小部件。:-)
https://stackoverflow.com/questions/17623582
复制相似问题