Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 重新排序Qobject的连接队列_Qt_Signals_Qnetworkaccessmanager_Qwebpage - Fatal编程技术网

Qt 重新排序Qobject的连接队列

Qt 重新排序Qobject的连接队列,qt,signals,qnetworkaccessmanager,qwebpage,Qt,Signals,Qnetworkaccessmanager,Qwebpage,我有一个定制的QNetworkAccessManager和一个QWebPage类,现在我想读取QWebPage检索到的每个请求的回复数据 现在我连接了finished()信号,但由于QWebPage首先连接它,QWebPage的第一个finished()插槽将读取QNetworkReply对象中的所有数据,因此QNetworkAccessManager中的插槽将完全不读取任何数据 因此,我是否可以将连接“插入”到QObject的连接列表中,而不是附加它?问题是,如果您能够这样做,QWebPage

我有一个定制的QNetworkAccessManager和一个QWebPage类,现在我想读取QWebPage检索到的每个请求的回复数据

现在我连接了finished()信号,但由于QWebPage首先连接它,QWebPage的第一个finished()插槽将读取QNetworkReply对象中的所有数据,因此QNetworkAccessManager中的插槽将完全不读取任何数据


因此,我是否可以将连接“插入”到QObject的连接列表中,而不是附加它?

问题是,如果您能够这样做,
QWebPage
将无法从
QNetworkReply
对象读取数据,因为回复是顺序的
QIODevice
,数据只能读取一次

我能够处理这个问题的唯一方法是重写
QNetworkAccessManager::createRequest
,并让它返回一个
QNetworkReply
子类,它充当实际reply对象的包装器,可以捕获传入的数据


啊,请看解决方案。

我不会说这是不可能的,但据我所知,连接列表是一个向量,但它保存在
QObjectPrivate
类中,因此不会公开。