栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用QtWebKit时如何知道何时加载网页?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用QtWebKit时如何知道何时加载网页?

我实际上尚未做到这一点,但我认为您 可以 使用来实现您的解决方案

QNetworkAccessManager

您可以使用networkAccessManager
()函数从QWebPage获取QNetworkAccessManager
。QNetworkAccessManager的信号完成(QNetworkReply *Reply),该信号在QWebPage实例请求文件时触发。

finished
信号为您提供了QNetworkReply实例,从中可以获取原始请求的副本,以便识别该请求。

因此,创建一个附加到

finished
信号的插槽,使用传入的QNetworkReply方法确定哪个文件刚刚完成下载,如果这是您的Ajax请求,请执行所需的任何处理。

我唯一需要说明的是,我以前从未做过此事,因此我不确定100%会奏效。

另一种选择是使用QWebframe的方法将对象插入页面的对象模型中,并插入一些Javascript,当Ajax请求完成时,Javascript将通知您的对象。这是一种稍微有点骇人听闻的方法,但是绝对可以。

编辑:

第二种选择对我来说似乎更好。工作流程如下:

在QWebframe :: javascriptWindowObjectCleared()信号上附加一个插槽。此时,调用QWebframe ::
evaluateJavascript()以添加类似于以下内容的代码:window.onload = function(){//页面已完全加载}

将所需的任何代码放入该函数中。您可能想通过QWebframe ::
addToJavascriptWindowObject()将QObject添加到页面,然后在该对象上调用一个函数。仅在页面完全加载时才执行此代码。

希望这能回答问题!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/427336.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号