我有一个QNetworkAccessManager作为我班级的成员。我将完成的信号从这个管理器连接到我写的replyFinished函数。
manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),this,SLOT(replyFinished(QNetworkReply*)));
在一个单独的例程中,我循环来自经理
的get调用for (int si = 0; si<numLines; si++)
{
QString line = lines[si];
manager->get(QNetworkRequest(QUrl(line)));
}
在我的回复完成的插槽例程中,我知道我可能没有按照它们在循环中执行的顺序接收信号,但有什么方法可以获得该信息?也就是说,在我的replyFinished例程中,有一种聪明的方法可以获得“si”吗?谢谢你的帮助!
答案 0 :(得分:2)
return=0
返回指向QNetworkAccessManager::get()
对象的指针。此指针与通过QNetworkReply
插槽的指针相同。您可以使用replyFinished()
存储QNetworkReply *指针和整数(QMap
在您的代码中)的配对。
这是一个有效的例子;
si