每当我尝试创建新的QWebView时,构建后的错误都是
QWidget: Must construct a QApplication before a QPaintDevice
为什么会这样?
是的,我确实在专业文件中添加了QT += webkit
,并在此处说明了
在qwtconfig.pri
中CONFIG + = QwtDll这一行必须是 - >
#CONFIG + = QwtDll
qtwconfig.pri在哪里?
FWI我正在进行静态构建
这是main()
#include "MyWidget.h"
#include <QPlastiqueStyle>
#include <QtPlugin>
#include <QtWebKit/QWebView>
Q_IMPORT_PLUGIN(qico)
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
app.setStyle(new QPlastiqueStyle);
app.setFont(QFont("Calibri"));
MyWidget widget;
widget.show();
QWebView w;
w.show();
return app.exec();
}
答案 0 :(得分:1)
答案 1 :(得分:0)
您需要实例化QApplication
对象才能使用任何基于窗口小部件的类,并且必须先创建它,因此您的main()
看起来应该是这样的。
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWebView w;
w.show();
return a.exec();
}
答案 2 :(得分:0)
假设您正在创建QApplication
,请确保您没有静态分配对象。
不要这样做
QWebView w;
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
w.show();
return a.exec();
}
答案 3 :(得分:0)
此错误的另一个来源可能是链接到Qt库的错误版本 - 调试版本的发行版本,反之亦然。