我第一次尝试 Qt,想要创建一个加载网站的非常基本的应用程序。我想使用 Qt WebEngine。
这是我的 helloworld.pro:
TEMPLATE = app
TARGET = hello
DEPENDPATH += .
INCLUDEPATH += .
QT += webenginewidgets
SOURCES += hello.cpp
这是我的hello.cpp
#include <QApplication>
#include <QtWebEngineWidgets/QtWebEngineWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWebEngineView *view = new QWebEngineView(parent);
view->load(QUrl("http://qt-project.org/"));
view->show();
return app.exec();
}
尝试编译时出现错误:
Project ERROR: Unknown module(s) in QT: QWebEngineView
Project ERROR: Unknown module(s) in QT: webenginewidgets
我想我知道它找不到模块,但查看 qt 文档似乎是包含它们的正确方法。
我在 Qt 5.5.0 上运行 QtCreator 3.4.2。
看起来现在只有少数编译器支持:
尝试使用其中之一进行构建,它应该可以工作。
我的猜测是,基本上它所构建的 Chromium 项目非常复杂,有很多依赖项,并且 QtWebEngine 尚未被其他编译器向后移植。
QtWebKit 大多数时候应该仍受支持,但 QtWebEngine 才是事情的发展方向。
安装Webkit包即可解决问题:
apt-get install libqt5webkit5-dev
我试图编译 Qt 的 WebEngine Widgets 最小示例
使用mingw编译器编译失败,但是当我尝试使用MSVC2017_64bit编译它时,它成功编译了。
我使用的是Qt 5.14.2版本,从维护工具中有关QTWebEngine模块的信息中,您会发现以下内容: