这并不容易:出于安全考虑,网络浏览器是堡垒。所以从网页中的 JS 到浏览器之外的东西是相当困难的。
另外,QtWebKit 并不是一个非常开放的 API。您的情况最大的障碍是它不提供对 DOM 的访问,因此您只能替换整个 HTML。
因此,您需要修补并编写大量代码来实现缺少的 API 和功能。
自 Qt 4.6 发布以来,有了 QWebElement (请参阅文档以获取示例),因此您至少可以访问 DOM 并修改它。这将使很多事情变得更加简单。我建议决定由谁控制浏览器:您的应用程序是调用外部的 JavaScript,还是真正使用 C++ 编写的应用程序,并且您使用浏览器作为智能 UI 渲染器?
一种更简单的方法可能是让您的想法发挥作用,即在应用程序启动时启动内部 Web 服务器,然后打开指向本地服务器 URL 的 QtWebKit 视图。然后,您就可以使用所有标准的 Web 开发工具。Eclipse 将这种技术用于其内部帮助系统。
| 归档时间: |
|
| 查看次数: |
4789 次 |
| 最近记录: |