[Qt]实用系统安装的浏览器打开QTextBrowser中的链接
2020-02-01 本文已影响0人
_小老虎_
在QT中,当我们实用
QTextBrowser
编辑创建链接之后,会自动用QTextBrowser
打开链接,这个时候如果页面异步加载包括用了许多前沿的新特性,可能无法渲染成功,所以就需要用系统浏览器打开。
具体方法:
利用signals
-slots
去打开,
- 用到的signal为
anchorClicked
- 用到的
slots
为自定义之后用QDesktopServices::openUrl
打开链接
代码如下:
ui->introTxtBrowser->setOpenLinks(false);
connect(ui->introTxtBrowser, SIGNAL(anchorClicked(const QUrl&)),this, SLOT(open(const QUrl&)));
void changyanlong_xiaolaohu::open(const QUrl& url)
{
qDebug("open url: %s",url.toString().toStdString().data());
QDesktopServices::openUrl(url);
}