QWebChannel
然后就是一个继承自QObject的类
#pragma once
#include <QObject>
#include <QDebug>
#include <QMessageBox>
class MidHelper : public QObject
{
Q_OBJECT
public:
MidHelper(QObject \*parent = nullptr);
~MidHelper();
public slots:
// 接收到页面发送来的消息
void web\_to\_cpp(const QString& msg);
};
然后我把网页放到了qt程序中
m_view = new QWebEngineView(this);
...
QVBoxLayout\* v_layout_main = new QVBoxLayout();
setLayout(v_layout_main);
建立沟通web和c++的桥梁
m_midHelper = new MidHelper(this);
m_webChannel = new QWebChannel(this);
m_webChannel->registerObject("xxx", m_midHelper); // xxx是我取的名字
m_view->page()->setWebChannel(m_webChannel);
这里需要注意注册对象,第一个参数是一会web里要用的名字,第二个是要调用的对象。
然后QWebEngineView对象的m_view调page找到那个web页面,架桥setWebChannel。
然后是网页里的代码
<button id="btn\_ff">ff</button>
<script type="text/javascript">
$('#btn\_ff').click

最低0.47元/天 解锁文章
1270

被折叠的 条评论
为什么被折叠?



