3

モジュールQtWebEngineで新しいQt5.4を使用していますが、mainFrame()がもう存在しないことがわかります。ページの contentSize/サイズを取得する方法と、今すぐレンダリングする方法は? setView と view を試しましたが、うまくいきません。

4

2 に答える 2

2

そのためのネイティブ Qt メソッドが見つかりませんでしたが、回避策を思いつきました。ページが読み込まれたら、次のようにしてウィジェットのサイズを Web コンテンツに合わせて変更します。

webView->page()->runJavaScript("document.documentElement.scrollWidth;",[=](QVariant result){
int newWidth=result.toInt()+10;
webView->resize(newWidth,webView->height());
});

webView->page()->runJavaScript("document.documentElement.scrollHeight;",[=](QVariant result){
int newHeight=result.toInt();
webView->resize(webView->width(),newHeight);
});

NB: 幅 10px の余白を追加しました

于 2015-08-25T08:33:45.900 に答える
1

QWebEnginePage::geometryChangeRequested 信号が目的どおりに動作するかどうかを確認します。

また、 aQWebEnginePageを作成してQWebEngineView(それは aですQWidget)、 を呼び出して a を表示しますQWebEngineView::setPage(yourPage)

于 2014-10-09T14:31:56.857 に答える