QT label setText () при сохранении форматирования текста - PullRequest
1 голос
/ 10 октября 2019

Я создал метку в QT Designer, и мне нужно установить текст из реализации cpp. Это работает. Но форматирование текста (размер и жирный шрифт) удаляется.

Как установить текст, сохранив форматирование, выполненное в файле пользовательского интерфейса?

Пример:

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

Ответы [ 2 ]

1 голос
/ 10 октября 2019

Вы можете открыть файл ui в текстовом редакторе, чтобы проверить, какой тест установлен. В реальном Qt использует HTML для форматирования текста. Кроме того, вы можете установить таблицу стилей .

. Чтобы сохранить форматирование, вы можете попробовать это: 1. Установить текст "% 1" в ui 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"));
}

0 голосов
/ 10 октября 2019

Я нашел реальную проблему. Я установил форматирование текста в редакторе форматированного текста. Что мне нужно было сделать, это установить форматирование для метки с помощью свойств QtWidget. Когда это было изменено, все было сохранено при установке нового текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...