功能:在QLabel中添加URL地址,并实现点击事件;
说明:QLabel中显示的文本中,可以实现部分文本有超链接功能;如下图所示,红色字体有URL功能;
代码:
QLabel *urlLab = new QLabel(this);
urlLab->setGeometry(50,50,300,50);
urlLab->setStyleSheet("border:1px solid lightblue");
QString urlDisplay = "urlAddressDisPlay";
QString urlStyle = "<a href=www.baidu.com style=\"color:red;text-decoration:none;\">";
urlLab->setText(QString("This is test for QLabel url, %1%2").arg(urlStyle).arg(urlDisplay));
connect(urlLab, &QLabel::linkActivated, [&](QString linkTxt){
qDebug() << "linkActivated" << linkTxt;
});
代码说明:
<a href=www.baidu.com style=\"color:red;text-decoration:none;\">
href=后面的 www.baidu.com 就是点击事件信号中的参数,即上面代码中的linkTxt; style = color 设置URL字体颜色;text-decoration:none;表示URL无下划线;
URL点击信号是linkActivated,可以用信号槽 添加点击事件处理;
<a href=......>urlDisplayTxt, 这个urlDisplayTxt 就是QLabel中 URL的显示字符串;
以上;
原创,转载请标明出处;