QtWebEngineView加载本地网页

直接加载放在exe同级目录下的资源是不行的,需要把资源通过qrc放到exe里面,然后通过类似qrc:/robotHtml/index.html这样的路径加载才行。

	mWebView = new QWebEngineView(parent);
    // mWebView->load(QUrl::fromLocalFile("./robotHtml/index.html"));
    // mWebView->load(QUrl("http://www.baidu.com"));
    mWebView->load(QUrl("qrc:/robotHtml/index.html"));
    // mWebView->show();

运行网页中包含的脚本,还可以取得返回值。

        QString cmd = QString("ctrlFuns[0](%1, %2)").arg(0).arg(val);
        mWebView->page()->runJavaScript(cmd);

在这里插入图片描述

可能遇到的问题

可能对于包含进来的第三方js脚本,Qt可能会将其语法识别错误,从而无法顺利将本体exe编译。这时可以修改一下.js的后缀,绕过Qt的检查就行。
对应的html文件中也要做相应的修改。

在这里插入图片描述
不用这样操作,正确的操作为在pro文件中添加跳过编译qrc文件的操作:
【QT+ECharts实现绘图】【Deploying Qt WebEngine Applications】

QTQUICK_COMPILER_SKIPPED_RESOURCES += resources/my_resource.qrc

## 或者
#CONFIG -= qtquickcompiler

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值