QWebView建立后能加载出来页面却不能点击解决方案
项目中需要内嵌一个页面和一个跳转页面,即微信扫码的页面,结果发现创建webview后怎么点击页面连接都无效,尝试使用QWebSettings设置完了所有的属性都不行。后面查找原因发现一个可以跳转的方法。
使用QWebPage的setLinkDelegationPolicy方法,然后处理linkClicked信号就可以打开了
QHBoxLayout* ph = new QHBoxLayout;
QWebView* view = new QWebView;
//QWebSettings* wsets = QWebSettings::globalSettings();
QWebPage* page= view->page();
**page->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);**
connect(view,&QWebView::linkClicked,[&](const QUrl& url){
QDialog* pDlg = new QDialog();
QHBoxLayout* ph1 = new QHBoxLayout;
QWebView* view2 = new QWebView(pDlg);
view2->load(url);
ph1->addWidget(view2);
pDlg->setLayout(ph1);
pDlg->exec();
});
view->load(QUrl("https://www.baidu.com"));
view->show();
view->setFocus();
ph->addWidget(view);
ui->centralwidget->setLayout(ph);

1万+

被折叠的 条评论
为什么被折叠?



