没有在 QTextBrowser 中为超链接加下划线

Posted

技术标签:

【中文标题】没有在 QTextBrowser 中为超链接加下划线【英文标题】:Not underlining hyperlink in QTextBrowser 【发布时间】:2018-11-26 19:42:05 【问题描述】:

在设置指向QTextBrowser 的超链接时,我希望该链接 加下划线。在以前的 Qt 版本(例如 2、3、4)中,曾经有一个 setLinkUnderline(bool) 方法可能完成了这项工作。 Qt5 如何做到这一点?

谢谢

【问题讨论】:

【参考方案1】:

一种可能的解决方案是使用 css 消除下划线:

#include <QApplication>
#include <QTextBrowser>

int main(int argc, char *argv[])

    QApplication a(argc, argv);
    QTextBrowser w;
    w.document()->setDefaultStyleSheet("a text-decoration: none; ");
    w.append("<a href=\"https://***.com/\">Stack Overflow</a>");
    w.show();
    return a.exec();

【讨论】:

天哪,我尝试使用w.setStyleSheet 而不是w.document()-&gt;setDefaultStyleSheet 失败了。非常感谢。 @Eurydice 一件事是适用于 Qt Widgets 的 Qt StyleSheet,另一件事是使用 QTextDocument 的 css。 :-)

以上是关于没有在 QTextBrowser 中为超链接加下划线的主要内容,如果未能解决你的问题,请参考以下文章

如何把word文档中相同的字设置相同的颜色并加下划

可以在 TextView 文本中为单词加下划线

如何在Android中为按钮的文本加下划线?

从 QTextBrowser 打开文件

如何在绘图标题或标签中为文本加下划线? (ggplot2)

如何在 QTextBrowser (Html) 中设置文本颜色? (PyQt)