Qt5.6以下的版本,基于QtWebkit控件
Qt5.6以上的MSVC版本,基于 Chromium 的浏览器引擎 Qt WebEngine
Qt5.6以上的mingw 版本,只能采用QAxWidget 控件
如果没有这个控件请安装Qt对应的版本选定webengineviw或者对应的模块
Qt5.7msvc 下使用 webengine
工程文件里面包含: QT += webenginewidgets #include <QWebEngineView> 通过QWebEngineView这个控件去显示url、
QWebEngineView *myWeb = new QWebEngineView(this);
myweb->setUrl(QUrl("https://www.baidu.com/"));
这样可以直接使用了,但是没有研究添加控件,比如前进,后退,刷新之类的。
效果图如下,(可能是由于太多个webView的原因,导致卡顿7个)
Qt 5.7MingW 下使用QAxwigdet
工程文件里添加 QT += axcontainer
#include <QAxWidget>
mainLayout = new QVBoxLayout(this);
myWidget = new QAxWidget(this);
mainLayout->addWidget(myWidget);
myWidget->setControl(QString::fromUtf8("{8856F961-340A-11D0-A96B-00C04FD705A2}"));//注册组件UUID
myWidget->setObjectName(QString::fromUtf8("my_musicLibraryWebWid"));//设置控件的名称
myWidget->setFocusPolicy(Qt::StrongFocus); //设置控件接收键盘焦点的方式:鼠标单击、Tab键
myWidget->setProperty("DisplayAlerts",false); //不显示任何警告信息。
myWidget->setProperty("DisplayScrollBars",true); // 显示滚动条
QString webStr = QString("http://www2.kugou.kugou.com/yueku/v9/html/home.html");//设置要显示的Url kugou的。
myWidget->dynamicCall("Navigate(const QString&)",webStr);
效果图如下,非常流畅,毫无卡顿。
至于4.8的webkit就不测试了,很少用到,基本应用都是以上两种,4.x都是linux这边比较多,目前不涉及暂不研究,有需要可以私信。