From ed83270810eadbb18a5611c4ec4c330b66f79d20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83=E6=9C=8B=E7=A8=8B?= Date: Fri, 12 Jun 2020 20:03:00 +0800 Subject: [PATCH] =?UTF-8?q?fix(Tips):=20(=E6=91=98=E5=8F=96)=E8=A7=A3?= =?UTF-8?q?=E5=86=B3tips=E6=8F=90=E7=A4=BA=E4=B8=8D=E6=94=AF=E6=8C=81html?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 提取富文本中的纯文本进行显示 Log: 解决tips提示不支持html语言的问题 Bug: https://pms.uniontech.com/zentao/bug-view-31784.html # Conflicts: # widgets/tipswidget.cpp --- widgets/tipswidget.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/widgets/tipswidget.cpp b/widgets/tipswidget.cpp index 3ef2be4b6..07068a6e4 100644 --- a/widgets/tipswidget.cpp +++ b/widgets/tipswidget.cpp @@ -2,6 +2,7 @@ #include #include +#include TipsWidget::TipsWidget(QWidget *parent) : QFrame(parent) { @@ -11,9 +12,13 @@ TipsWidget::TipsWidget(QWidget *parent) : QFrame(parent) void TipsWidget::setText(const QString &text) { m_type = TipsWidget::SingleLine; - m_text = text; + // 如果传递的是富文本,获取富文本中的纯文本内容进行显示 + QTextDocument document; + document.setHtml(text); + // 同时去掉两边的空白信息,例如qBittorrent的提示 + m_text = document.toPlainText().simplified(); - setFixedSize(fontMetrics().width(text) + 6, fontMetrics().height()); + setFixedSize(fontMetrics().width(m_text) + 6, fontMetrics().height()); update();