在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);
}










网友评论