crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QTranslator не переводит
aerosun
  опции профиля:
сообщение 5.2.2014, 12:40
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 21.3.2013
Пользователь №: 3757

Спасибо сказали: 0 раз(а)




Репутация:   0  


Есть глобальная текстовая переменная. Пытаюсь её перевести на другой язык - не переводится ничего. :(
Минимальный тестовый пример:
QString aaa = QObject::tr(QT_TR_NOOP("Hello"));

int MainFunc( int argc, char *argv[] )
{
    QApplication app(argc, argv);

    QTranslator translator;
    bool is = translator.load("appcenter_ru.qm", app.applicationDirPath());
    QApplication::installTranslator(&translator);

    QLabel lbl(aaa);
    lbl.show();

    return app.exec();
}

Файл перевода лежит рядом с бинарником, переменная is равна true. Тоесть всё сделал правильно.
Не переводит!
В чём может быть причина и как сделать, чтобы переводило?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 5.2.2014, 16:32
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


я не сталкивался с ситуацией, когда строки помечаются как строки для перевода, до установки переводчика. Возможно причина в этом, чтобы проверить попробуй переместить строку
QString aaa = QObject::tr(QT_TR_NOOP("Hello"));

после
QApplication::installTranslator(&translator);




И, кстати, У тебя масло масленное получилось, используй либо макрос, либо QObject::tr()
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 12:47