1
我得到了QWebPage :: loadFinished(布爾)信號的問題,它回調兩次,這是正常的? (根本沒有鏈接,例如HTTP狀態302)Signal QWebPage :: loadFinished(bool)返回兩次?
考慮下面的代碼,整個事情可能會導致問題,試圖加載另一個鏈接,這將是一個問題?
如果我在loadFinished(bool)
插槽做每次qDebug() << thisUrl;
,我可以看到它的3倍,是正常的,一個URL XXX
,兩個用於URL YYY
,最後兩個環節是完全一樣的。
class Dummy
{
public:
Dummy()
{
page = new QWebPage(this);
connect (page , SIGNAL(loadFinished(bool)) , SLOT(loadFinished(bool)));
page->mainFrame()->load ("XXX");
}
private:
QWebPage *page;
private slots:
void loadFinished (bool ok)
{
if (! ok) return;
const QString & thisUrl = page->mainFrame()->url().toString();
if (thisUrl matches XXX)
{
// parse reply message of url XXX
page->mainFrame()->load ("YYY");
return;
}
if (thisUrl matches YYY)
{
// parse reply message of url YYY
return;
}
}
};
問題解決了,我不明白爲什麼 – daisy
我真的不知道,我真的沒有傾向於去Qt代碼裏找出原因。也許你可以提交錯誤報告? –