「リンクを新しいウィンドウで開く」を処理して、QWebPage
新しいウィンドウではなく新しいウィンドウを開き、前の QWebPage をスタックに保存して新しいウィンドウを表示するにはどうすればよいQWebView::setPage()
ですか?
私はQt(およびC ++でさえ)が初めてです。スタックを修正する方法に関する推奨事項も高く評価されています。
QWebView
リンクが「リンク」の場合、同じリンクを強制的に開く
to にlinkDelegationPolicyを設定してQWebPage
から、のシグナルをQWebPage::DelegateAllLinks
キャッチし、シグナルの引数でを使用して新しいを作成できます。linkClicked
QWebPage
QWebPage
url
スタックに関しては、手動でも行うことができます。QList
/を持ち、上記のシグナルからQVector
新しいものを取得するたびに、現在のシグナルをスタックに追加してから、新しいシグナルを作成し、それをQWebPage
QWebPage
QWebPage
QWebView::setPage()
また、 triggerActionをサブクラス化しQWebPage
てから、要求されたアクションを確認し、基本クラス関数を呼び出して代わりQWebPage::OpenLinkInNewWindow
にアクションを与えるかどうかを確認することもできます。QWebPage::OpenLink
これがすべての場合に機能するかどうかはわかりませんが、機能する場合は試してみる価値があります。