html - 使用Qwebview将数据发送到嵌入在QT gui中的html网站

标签 html c++ qt plugins

我正在使用 QT (c++) 开发桌面应用程序。它嵌入了我使用 Qwebview 使用简单的 html 文件(包括 javascript)创建的网站。该网站包含一个插件和一些 html 框。这些框中的数据会在插件中进行更改。

我的意图是以用户不必直接操作插件的方式将数据从我的 QT 代码发送到该 html 代码。我对 QT 和 html 的唯一经验是这个项目,所以我不确定我应该如何进行。

我做了一些研究,显然 jquery 可能是一个解决方案。最好将变量中的信息直接发送到插件而不是填充 html 框,但我认为这是不可能的。

如果我没有使用正确的技术词汇来描述我的情况,我深表歉意,但我是这些技术的初学者。

最佳答案

为此,您需要使用 QWebFrame::evaluateJavaScript函数在页面中运行一些 JavaScript (JS)。大多数插件都可以使用 JS 编写脚本,因此您只需要编写 JS 片段来触发功能。

QWebView* view;
// ...
QString cmd("document.getElementById(\"pluginid\").myPluginFunction();");
view->page()->mainFrame()->evaluateJavaScript(cmd);

关于html - 使用Qwebview将数据发送到嵌入在QT gui中的html网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24543744/

相关文章:

jquery - 如何在悬停我的表格时应用 div td

HTML:iframe 元素之间的奇怪空间?

c++ - 返回不停止函数,递归函数问题? (编程练习,动态规划,Levenshtein Back-trace)

qt - 在 QML 中将 TextArea 光标移动到 MouseArea 单击上

c++ - Qt Makefile 找不到自己的目录

javascript - 动态添加元素并尝试使用选择器 .click 事件 jQuery

javascript - XMLHttpRequest 不工作 - 没有错误

c++ - libx264.dll 公开函数 x264_encoder_open_130,这不应该是 x264_encoder_open 吗?

java - CMake 和 make 在错误的地方寻找 libjawt.so 文件

qt - QML 属性绑定(bind)取决于同一组件中的其他绑定(bind)