我正在尝试使用QNetworkAcessManager
获取 url 的来源.. 但似乎信号槽复合体有问题!
我onFinished(QNetworkReply*)
的永远不会被触发!为什么?
void Worker::start(QString url)
{
QNetworkAccessManager manager;
QNetworkReply *reply = manager.get(QNetworkRequest(QUrl(url)));
QObject::connect(reply, SIGNAL(finished(QNetworkReply*)), this, SLOT(onFinished(QNetworkReply*)));
}
void Worker::onFinished(QNetWorkReply * reply)
{
qDebug() << "Slot has been triggered!";
QString html = reply->readAll();
}
编辑:
正如“Oleg Shparber”所说,这是我的新代码(也不起作用):
void Worker::start(QString url)
{
QNetworkAccessManager *manager = new QNetworkAccessManager();
QNetworkReply *reply = manager->get(QNetworkRequest(QUrl(url)));
QObject::connect(reply, SIGNAL(finished()), this, SLOT(onFinished()));
void Worker::onFinished()
{
qDebug() << "Slot has been triggered!";
QString html = reply->readAll();
}