Qt 从QWebView打开外部浏览器

Qt 从QWebView打开外部浏览器,qt,qwebview,Qt,Qwebview,我的应用程序上有一个“起始页”,它只是一个从我的服务器下载页面的QWebView小部件 当用户单击一个链接时,我希望它在默认浏览器中打开,而不是在小部件中打开 有没有办法用QWebView做到这一点?或者我应该采取不同的方法吗?只需调用QWebPage::setLinkDelegationPolicy(QWebPage::DelegateAllLinks),然后将信号QWebView::linkClicked(const QUrl&url)连接到插槽,并在插槽中执行浏览器。 确定默认浏览器是什么

我的应用程序上有一个“起始页”,它只是一个从我的服务器下载页面的
QWebView
小部件

当用户单击一个链接时,我希望它在默认浏览器中打开,而不是在小部件中打开


有没有办法用
QWebView
做到这一点?或者我应该采取不同的方法吗?

只需调用QWebPage::setLinkDelegationPolicy(QWebPage::DelegateAllLinks),然后将信号QWebView::linkClicked(const QUrl&url)连接到插槽,并在插槽中执行浏览器。 确定默认浏览器是什么稍微复杂一些,这取决于用户正在运行的桌面。环境变量浏览器通常包含默认值


或者使用[正如gnud在评论中建议的那样]

假设链接是外部的,您只需调用QWebView小部件即可。该属性默认为false;将其设置为true会导致在默认web浏览器中打开外部链接。

若要打开浏览器,请使用QDesktopServices::openUrl-