QT标签setText()同时保留文本格式

时间:2019-10-10 08:54:26

标签: c++ qt qt5

我已经在QT Designer中设计了label,并且需要从cpp实现中进行set the text。这可行。但是,文本格式(大小和粗体)已被删除。

如何在保留ui文件格式的同时设置文本?

示例:

ui->label_version->setText(QString::fromStdString("1.0.0"));

2 个答案:

答案 0 :(得分:1)

您可以使用文本编辑器打开ui文件,以检查设置了什么测试。实际上,Qt使用HTML格式化文本。另外,您可以设置stylesheet

要保存格式,您可以尝试以下操作: 1.在ui中设置文本“%1” 2.在更改之前保存文本 3.使用保存的文字+ .arg设置新文字

Constructor()
{
    this->m_savedText = m_ui->myLabel->text();
    m_ui->myLabel->setText(this->m_savedText.arg("Default text"));
}

handler()
{
    m_ui->myLabel->setText(this->m_savedText.arg("New text"));
}

答案 1 :(得分:0)

我找到了真正的问题。我已经在RTF编辑器中设置了文本格式。我需要做的是使用QtWidget属性设置标签的格式。更改后,设置新文本时将保留所有内容。

相关问题