自从Qt5.6后引入了QWebEngine,摒弃了原先的QWebkit,这是一款基于chrome浏览器内核引擎,Qt webenginewidgets模块中提供了QWebEngineView这个视图控件来很方便的加载和显示网页,仅需如下几行:

QWebEngineView* webview = new QWebEngineView;
webview->load(QUrl("https://www.baidu.com/"));
webview->show();

与webkit主要区别:

在我的项目里:webkit不能执行网页里js脚本(也可能是脚本不兼容)~而webengine确可以。

webengine尽管功能更强,但用到QtWebEngineProcess.exe 占用内存更大

QWebEngineProfile* engineProfile = ui.webEngineView->page()->profile();
	engineProfile->clearHttpCache(); //删除缓存
	QWebEngineCookieStore* cookie = ui.webEngineView->page()->profile()->cookieStore();
	cookie->deleteAllCookies();//删除cookie 

刷新时执行此操作,明显看到内存降低然后随网页打开再回升的一个过程,证明可用~

将QtWebEngineProcess.exe与主进程合二为一。
qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--single-process");

QWebEngineView的一些设置方法:

ui.webEngineView->settings()->setAttribute(QWebEngineSettings::ShowScrollBars, false);//隐藏滚动条

https://doc.qt.io/qt-5/qwebenginesettings.html