Displays a web page using the Qt Quick integration of Qt WebEngine.
WebEngine Qt Quick Minimal Example demonstrates how to use the WebEngineView item to render a web page. It shows the minimum amount of code needed to load and display an HTML page, and can be used as a basis for further experimentation.
To run the example from Qt Creator, open the Welcome mode and select the example from Examples. For more information, visit Building and Running an Example.
In main.cpp
we use only the QGuiApplication and QQmlApplicationEngine classes. We also include qtwebengineglobal.h
to be able to use QtWebEngineQuick::initialize.
#include <QGuiApplication> #include <QQmlApplicationEngine> #include <QtWebEngineQuick/qtwebenginequickglobal.h>
In the main
function we first set the QCoreApplication::organizationName property. This affects the locations where Qt WebEngine stores persistent
and cached data (see also WebEngineProfile::cachePath and WebEngineProfile::persistentStoragePath).
Next, we call QtWebEngineQuick::initialize, which makes sure that OpenGL contexts can be shared between the main process and the dedicated renderer process
(QtWebEngineProcess
). This method needs to be called before any OpenGL context is created.
Then we create a QQmlApplicationEngine, and tell it to load main.qml
from the Qt Resource System.
Finally, QGuiApplication::exec() launches the main event loop.
int main(int argc, char *argv[]) { QCoreApplication::setOrganizationName("QtExamples"); QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); QtWebEngineQuick::initialize(); QGuiApplication app(argc, argv); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec(); }
In main.qml
we create the top level window, set a sensible default size and make it visible. The window will be filled by a WebEngineView item loading the
Qt Homepage.
import QtQuick import QtQuick.Window import QtWebEngine Window { width: 1024 height: 750 visible: true WebEngineView { anchors.fill: parent url: "https://www.qt.io" } }
The example requires a working internet connection to render the Qt Homepage. An optional system proxy should be picked up automatically.
As part of the free Business evaluation, we offer a free welcome call for companies, to talk about your requirements, and how the Felgo SDK & Services can help you. Just sign up and schedule your call.
Sign up now to start your free Business evaluation: