QWebEngineView 以及 QWebEnginePage 的初始化:
browser = new QWebEngineView;
page = browser->page();
connect(page,&QWebEnginePage::loadFinished,this,&biliUser::leadDownload);
leadDownload()方法:
void biliUser::leadDownload(bool ok)
{
if (ok)
{
page->triggerAction(QWebEnginePage::SavePage,true);
qDebug()<<"load finished";
}
}
引发下载的方法:
void biliUser::downloadHTML(const QUrl &url, biliUser::HTMLtype type, const QString& avNumber)
{
page->load(url);
connect(page->profile(),&QWebEngineProfile::downloadRequested,
[this,type,avNumber](QWebEngineDownloadItem *downloadItem) {acceptDownload(downloadItem,type,avNumber);});
}
第一次使用downloadHTML方法时,程序正常运行。
之后使用另一个url调用downloadHTML时,page发出了两次loadFinished信号,分别对应上一次(即成功的第一次)使用load方法调用的url,和本次调用。
Qt版本5.14.1
请问有解决办法吗