0

QWebFrame::evaluateJavaScriptコード内の 1 か所で呼び出していますが、効果がありません。ただし、この呼び出しを setTimer(0) 呼び出しに置き換えて、このタイマーがタイムアウトしたときに元の関数を呼び出すと、機能します。機能するかどうかはどうすればわかりますか? 私の場合に評価される JavaScript コードは、AJAX 呼び出しを行う 1 つの JavaScript 関数を呼び出します。この AJAX 呼び出しはQNetworkAccessManager、. ただし、コードから直接呼び出すと、リクエストは作成されません。それが、最初のシナリオでは機能しないと言うときの意味です。QWebFrameQNetworkRequestQWebFrame::evalutateJavaScript

何かが QtWebKit の実行を妨げているか、呼び出されQNetworkAccessManagerた後にジョブを実行できないようevaluateJavaScriptです。イベントとメイン(GUI)イベントループに関係があると思われます。何か案は?

4

2 に答える 2

1

setTimer() の使用に関するコメントを考えると、適切な時点で qApp->processEvents() を呼び出すと問題が解決する可能性があります。

コードを提供していただけますか?これが何を意味するのかわかりません:

この AJAX 呼び出しにより、QWebFrame によって使用される QNetworkAccessManager が作成され、QNetworkRequest が送信されます。

于 2009-09-29T20:34:17.080 に答える
0

Do you called evaluateJavaScript before the signal loadFinished was emitted?

于 2011-08-18T03:46:43.843 に答える