QT通过JS与HTML的交互
来源:互联网 发布:国税局王军垃圾知乎 编辑:程序博客网 时间:2024/05/21 06:36
头文件加入
QT += core gui webenginewidgets webchannel
通过QWebChannel与JS交互 原理
QWebEnginePage *page = new QWebEnginePage(this); webView->setPage(page); webView->load(QUrl("qrc:/html/index.html")); webView->show(); QWebChannel *channel = new QWebChannel(this); //注册一个content 这里的内容通过JS的content来获取 channel->registerObject(QString("content"),this); page->setWebChannel(channel);
注意:一定要先给WebView设置page,再加载网页,否则网页出不来!
QT发送信息到JS:
signals: void sendText(const QString &s_user,const QString &s_pwd);
//点击按钮 设置发送的文本void MainWindow::callJSBtnClicked(){ //emit sendText(user->text(),password->text()); sendText(user->text(),password->text()); user->setText(""); password->setText("");}
QT接收到JS的信息
public slots: void receiveText(const QString &r_user,const QString &r_pwd);
void MainWindow::receiveText(const QString &r_user, const QString &r_pwd){ user->setText(r_user); password->setText(r_pwd);}
要用public才行!
JS中对信息的操作
window.onload = function () { new QWebChannel(qt.webChannelTransport,function (channel) { var content = channel.objects.content; //接收QT发送来的 content.sendText.connect(function (s_user, s_pwd) { document.getElementById("userName").value = s_user; document.getElementById("userPwd").value = s_pwd; }) //传给QT document.getElementById("submit").onclick = function () { var userName = document.getElementById("userName").value; var userPwd = document.getElementById("userPwd").value; document.getElementById("userName").value = ""; document.getElementById("userPwd").value = ""; content.receiveText(userName,userPwd); } })}
JS中content.sendText.connect 不曾关闭
在MainWindow中关闭连接
MainWindow::~MainWindow(){ this->disconnect();}
运行效果
“`
资源传送门:http://download.csdn.net/detail/me_badman/9750117
1 0
- QT通过JS与HTML的交互
- 实现js与Qt程序的交互
- Android 与 HTML + Js的交互
- Android与HTML+JS的交互
- Android与HTML的JS 交互
- JS与Qt对象交互
- JS与Qt对象交互
- android js与html 交互
- Android与Html&JS交互
- Android与HTML+JS交互
- Android与HTML+JS交互
- android与js+HTML交互
- 实现js与Qt程序的交互的一些方法
- Ext JS的Html标签与Ext组件的交互
- SVG与html的交互(svg的js与html的js互调用)
- SVG与html的交互(svg的js与html的js互调用)
- SVG与html的交互(svg的js与html的js互调用)
- iOS与JS的交互——通过WebViewJavascriptBridge
- 常用的手机宽度 前端切图用 常用的手机尺寸
- 从零开始做运营-读书笔记一
- 一道多线程面试题
- 【SSO单点系列】(2):CAS4.0 登录页的个性化定制、登录页验证码的添加
- Python中的元组和列表的区别
- QT通过JS与HTML的交互
- 【Codeforces 766 C Mahmoud and a Message】 + dp
- USB2.0协议标准描述符
- hadoop基本概念
- poj1573
- 安装VMware ESXi 6.0.0
- Spark系统运行内幕机制循环流程
- keil中文乱码解决和个人习惯字体设置
- 大数据下基于Tensorflow框架的深度学习示例教程