问题标签 [qwebkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 如何为我的浏览器创建网络历史记录
我是 Qt 的新手。我正在尝试创建一个示例浏览器应用程序。我已经创建了浏览器应用程序。现在我需要为我的应用程序创建 Web 历史记录。我不知道该怎么做。谁能帮我解决这个问题。提前致谢。
c++ - 在 Qt / C++ 中使用 QWebkit POST 请求
我想自动化在网络上填写表格、发送请求以及一遍又一遍地处理结果页面(使用不同的输入)的过程。
我可以使用 QWebPage / connect 访问页面(使用等待 loadFinished 信号的方法)。我可以使用 QWebPage、QWebElement 的 firstChild、nextSibling 和 setPlainText 方法遍历字段并填写值。
但是,对于如何提交信息和检索对发布请求的响应,我有点困惑。从在线教程看来,我可以使用 evaluateJavaScript() 单击提交按钮,但我看不到如何获取/刷新发布提交后产生的页面。(注意内容类型是 multipart/form-data,post 请求被发送到一个 php 脚本)。看起来使用 QNetworkRequest 类可能具有执行此操作的功能,但我不清楚如何。
qt - Qt Webkit 输出与某些网站的 mozilla/IE 不同
我正在使用 QWebKit 类来显示网页,但对于某些网站的输出与其他标准浏览器不同。
例如下面提到的站点右侧包含一个flash视频,如果您单击该flash视频的全屏,则右下角的flash播放器上的选项与其他浏览器不同。
链接以获得差异的快照。 https://picasaweb.google.com/103939036468452830901/Qt#5767128130858501410
c++ - QWebPage 和多线程
我有这个代码:
并输出:
在第二遍中,标签过多。什么是解决方法?或者我的错误在哪里?
c++ - 如何设置 QNetworkReply 的内容
这是我在这里的第一篇文章,我对 Qt 还很陌生。
我正在使用 Qwebkit 来加载网页,并且我对不完全从 web 加载一些资源感兴趣。具体来说,我试图只获取 jpg 文件的大小,而不是 jpg 二进制数据(不是 HTML 标记)中的图像数据。为此,我重新实现了 QNAM 的 createRequest 方法,如下所示:
然后我在我的 CustomReply 类中连接一些信号以将传入的数据附加到 QByteArray 中,然后我处理 QByteArray 以查看是否有我正在寻找的标记。现在在这里我不知道如何进行。在此之后我想做的是关闭连接(不下载更多内容)并使用我通过 CustomReply::getQNR() 收到的数据传递回复。我需要实现一个函数来将我的回复内容设置为我存储的 QByteArray,我已经阅读了这个和那个,但无法解决我的问题。
先感谢您。
qt - 为 QWebFrame javascript 设置 QObject 所有权
我有一个 QObject,它通过 addToJavaScriptWindowObject 接口存在于 QWebFrame javascript 环境中。此 QObject 具有 Q_INVOKABLE 方法,这些方法返回更多在 javascript 中使用的 QObject 指针(如工厂)。Qt 自动将这些 QObject 指针转换为可以在调用 javascript 环境中调用的对象。
问题是,我想让 javascript 承担这个 QObject 的所有权。当前行为是 C++ 环境保留所有权。
我过去直接处理过 QScriptEngine,其中 QObject 工厂对象持有一个指向 QScriptEngine 对象的指针,并使用带有 QScriptEngine::ScriptOwnership 参数的 QScriptEngine::newQObject 创建新对象。这完美地工作。但是对于 QWebFrame javascript 引擎,引擎隐藏在 QWebFrame 内部并且无法访问。
如何将 QObject 返回到 QWebFrame javascript 环境并让 javascript 承担该对象的所有权?
google-maps-api-3 - QWebKit 不处理 Google 地图的 click 和 dblclick
我只是在我的 index.html 中从谷歌地图 API 复制/粘贴了这段代码
在像 chrome 这样的浏览器中,一切都很好。我的意思是当我双击地图时它会放大。当我拖动地图时,地图的中心点会发生变化。但是当我在 QWebView 对象中加载这个文件时,地图会加载但 QWebView 不注意点击和双击!
google-maps - 在 Qt 中显示网页的替代方法
当我访问这个网页时,这是一个来自谷歌地图的简单地图,例如 Chrome 或 Firefox,一切都很自然。可以双击放大,可以拖动地图,也可以拖动街景模式图标。
但是当这个网页用下面的代码加载到一个 QWebView 对象中时,我没有鼠标拖动能力。例如,我不能拖动地图来改变它。
到目前为止,我找不到任何解决方案。有没有其他方法可以在 Qt 小部件中显示网页?
qt - 如何在 QWebView 窗口中获取 Keypress 事件
我正在使用 QWebView 在其中显示一些 Flash 内容。我已将此窗口的属性设置为无框,并将其设置为其他进程的子窗口(远程桌面终端会话窗口)。
我想在这个 Flash 视频中获取 ALT+F4 组合键。我的意思是说如果用户点击了 Flash 视频(即我的 QWebView 窗口现在处于焦点位置),当时如果用户按下 ALT+F4,那么我想对这个事件采取一些行动。
我已经覆盖了 keypressevent(QKeyEvent),但我没有得到这个被调用,即使在设置了焦点策略之后。
注意:- 我只收到按键事件,并且仅当用户单击 Flash 区域外的 QWebView 窗口时。
google-maps - qwebkit 谷歌地图
我确实启动了一个新的应用程序,使用 QT 我希望集成 google map 3.xx,因为 2 已被弃用......我已经阅读了很多关于该主题的内容但我仍然遇到我的 qwebview 不会滚动到缩放和鼠标拖动的问题不会平移。
我已经尝试了 chrome\1.0 技巧,我发现了一个可以工作但看起来像它使用 V2 的 api 的应用程序。
花哨的浏览器正在谷歌地图上工作,但不在 V3 api 示例上。谷歌地图还在V2上吗?
这是我加载的html:
我唯一还没有尝试过的是在不支持触摸的情况下重新编译 qwebkit。有人让它工作吗?