QT,QLabel添加超链接
1.方法1:使用信号槽绑定方式
//设置超链接并绑定信号槽
QLabel *linkLabel = new QLabel();
linkLabel->setText("<a href=\"http://www.cnblog.com/fron_csl\">linkLabelTest");
connect(linkLabel, SIGNAL(linkActivated(QString)), this, SLOT(openUrl(QString)));
//槽函数实现
void testWidget::openUrl(QString url)
{
QDesktopServices::openUrl(QUrl(url));
// //若是文件路径,则需使用下面的打开方式,具体可参见QUrl帮助文档
// QDesktopServices::openUrl(QUrl("file:///" + url, QUrl::TolerantMode));
}
2.方法2:通过设置QLabel属性实现超链接(此方法不需要绑定信号槽,比较简单)
linkLabel->setOpenExternalLinks(true);
linkLabel->setText("<a href=\"http://www.cnblog.com/fron_csl\">linkLabelTest");
QT是支持HTML的,所以呢,以下设置有效
1,设置超链接颜色
linkLabel->setText("<a style='color: green;' href=\"http://www.cnblog.com/fron_csl\">linkLabel");
2,去掉超链接下面的下划线
linkLabel->setText("<style> a {text-decoration: none} </style> <a href=\"http://www.cnblog.com/fron_csl\">linkLabel");
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
作者:风来风往风伤
出处:http://www.cnblogs.com/amwuau/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。