Russian Qt Forum
Ноябрь 23, 2024, 20:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Динамический перевод текста не на UI форме  (Прочитано 3855 раз)
Vladimir
Крякер
****
Offline Offline

Сообщений: 305



Просмотр профиля
« : Апрель 06, 2017, 12:17 »

Доброго дня! Необходимо динамически переводить на другие языки текст, прописанный в коде, а не расположенный на форме. Для текста на форме есть метода retranslateUi(), который и выполняет данную задачу, как быть с текстом в коде, когда UI должен строиться динамически? Пока получилось сделать только через
Код:
void BasePanelProject::changeEvent(QEvent *event)
{
    if(event->type() == QEvent::LanguageChange)
    {
        for(int i = 0; i < tabApp->count(); ++i)
          tabApp->setTabText(i,tr("Application"));
}
}
но при этом приходится еще раз пробегаться по всему сгенерированному UI и выставлять ему setText, причем не именем переменной в которой хранится текст, а самим текстом
tr("Application"), что ооочень не удобно, накладно и приходится дублировать текст по несколько раз! может есть способ умнее/хитрее это задачу решить?
« Последнее редактирование: Апрель 06, 2017, 12:24 от Vladimir » Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #1 : Апрель 06, 2017, 12:30 »

http://stackoverflow.com/questions/27635068/how-to-retranslate-dynamically-created-widgets
Записан
Vladimir
Крякер
****
Offline Offline

Сообщений: 305



Просмотр профиля
« Ответ #2 : Апрель 06, 2017, 18:11 »

Значит вручную, печалька  В замешательстве
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.1 секунд. Запросов: 22.