2009-04-12 128 views
4

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

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

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

回答

13

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

或者使用QDesktopServices::openUrl

+1

要打开浏览器,请使用QDesktopServices :: openUrl - http://doc.trolltech.com/4.5/qdesktopservices.html#openUrl – gnud 2009-04-12 22:00:44