新しいqwebengine(Qt5.4)でページのソースを取得しようとしていますが、何が間違っているのかわかりません:
QString html;
this->page()->toHtml([&html](const QString &result){ html = result; });
qDebug() << html; // is still empty
新しいqwebengine(Qt5.4)でページのソースを取得しようとしていますが、何が間違っているのかわかりません:
QString html;
this->page()->toHtml([&html](const QString &result){ html = result; });
qDebug() << html; // is still empty
printf デバッグの最初のステップは、ラムダが呼び出されたかどうかを確認することです{ qDebug() << "Lambda:" << result; html = result; }。コードは私には問題ないようです。
toHtmlただし、 が発行される前に呼び出さないようにしてくださいloadFinished。これにより、失敗する可能性があります。
toHtmlは非同期で動作することに注意してください。html呼び出しの直後に内容を印刷するtoHtmlと、コールバックはまだ呼び出されていません。
HTML が使用可能になったときにコールバックによって発行されるカスタム シグナルをクラスに追加することをお勧めします。
または、コールバックで HTML コードを直接処理します。