Ich versuche eine QWebPage zu laden mit folgendem code:
Code: Alles auswählen
QNetworkAccessManager* man = page.networkAccessManager();
connect(man, SIGNAL(finished(QNetworkReply*)),
this, SLOT(connectionEvent(QNetworkReply*)));
page.setForwardUnsupportedContent( true );
connect(&page, SIGNAL(loadStarted()),
this, SLOT(loadSiteStarted()));
connect(&page, SIGNAL(loadProgress(int)),
this, SLOT(loadProgress(int)));
connect(&page, SIGNAL(loadFinished(bool)),
this, SLOT(render(bool)));
connect(&page, SIGNAL( statusBarMessage(QString)),
this, SLOT(showMessage(QString)));
connect(&page, SIGNAL( unsupportedContent(QNetworkReply*)),
this, SLOT( connectionEvent(QNetworkReply*)));
page.mainFrame()->load(url);loadStarted()
loadProgress(int) erst mit wert 10, dann 100 ?
loadFinished(bool) wird jetzt mit false aufgerufen!!! Die abfrage nach received bytes an dieser stelle liefert 0!
Eine Abfrage nach dem aufgetretenen Fehler über das QNetworkAccessManager objekt bringt zu tage:
QNetworkReply::OperationCanceledError !!???
Aus der doku: the operation was canceled via calls to abort() or close() before it was finished.
Natürlich ruft hier niemand zwischen drin ein close oder abord auf!
Was bitte läuft hier falsch?