1、QtWebEngineWidgets模块
#include <QtWebEngineWidgets>
QT += webenginewidgets
1.1 QWebEnginePage
示例代码:
#include <QtWebEngineWidgets>
#include <QWebEnginePage>
//1、创建一个新的 QWebEnginePage 实例:
page = new QWebEnginePage(this);
//2、 加载一个网页:
page->load(QUrl("http://www.example.com"));
//3、设置页面的标题:
//page->setTitle("My Web Page");
//4、获取页面的 URL:
QUrl url = page->url();
//5、在页面中执行 JavaScript 代码:
page->runJavaScript("alert('Hello, world!')");
//6、获取页面的源代码:
//QString html = page->toHtml();
//7、获取页面的 favicon:
//QIcon icon = page->icon();
//8、监听页面的加载状态:
connect(page, &QWebEnginePage::loadProgress, this, [this](int progress)
{
ui->progressBar->setValue(progress);
});
//9、打印页面:
//page->print(&printer);
//10、获取页面的主窗口:
//QWebEngineView *view = page->view();
1.2 QWebEngineView
===============================================
注意: 编译一直报下面错误
Project ERROR: Unknown module(s) in QT: webenginewidgets
查资料常见原因以下三种:
1)QT版本过低。需要QT版本号为QT5.5版本及其以上。从Qt5.5开始,Qt WebKit模块被废弃,取而代之的是Qt WebEngine模块。且只有MSVC才支持该模块。
2)没有安装WebEngine库。在安装QT文件夹里有一个MaintenanceTool.exe应用程序,你可以更新和查看是否安装了WebEngine。
3)所使用的编译器不对。我遇到的就是这个原因。许多资料上写MSVC 2013及其以上版本构建,就可以支持Qt WebEngine。但我使用MSVC 2013不可以,并且MaintenanceTool.exe查看WebEngine显示只有msvc2017才支持,如下图
解决办法就是给QT配置 msvc2017的开发环境。
标签:QT,QtWebEngineWidgets,WebEngine,模块,Qt,page,页面 From: https://www.cnblogs.com/zhuchunlin/p/18307862