我有一個裝有一些URL(如https://www.google.com)一個QWebEnginePage兩個或兩個以上QWebEngineView
我想兩個QWebEngineViews要顯示此頁面QWebEnginePage的一個實例,但它看起來像Qt的不允許那。
一旦我在一個視圖上調用setPage,其他視圖將停止呈現頁面。 看起來這是一個所有權或類似的問題,但我在Qt文檔中沒有看到任何關於此的信息。
其他人面臨這樣的問題?
auto p = new QWebEnginePage();
p->load(QUrl("https://www.google.com"));
auto w1 = new QWebEngineView();
auto w2 = new QWebEngineView();
w1->setPage(p);
w2->setPage(p);
w1->show();
w2->show();
我希望兩個視圖都顯示相同的頁面,但只有w2顯示它。如果您稍後致電w1->setPage(p)
- 頁面將顯示在w1上並將從w2中消失。
UPD。 只想發表結論。 - QWebEnginePage的view()方法證明了一對一的關係。 - setPage源代碼清楚地表明「第二次它只是從第一個視圖斷開。」 - 「如果當前頁面是Web視圖的子項,它將被刪除。」 - 根本不回答我的問題。我的頁面不是Web視圖的子項,並且不會被刪除,只是不會像我期望的那樣同時呈現這兩個頁面。
你說得對,我已經更新了我的答案與相關一件從未使用過QWebEnginePage ::觀點方法的代碼 – demonplus