Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QTranslator не переводит
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt GUI
aerosun
Есть глобальная текстовая переменная. Пытаюсь её перевести на другой язык - не переводится ничего. :(
Минимальный тестовый пример:
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
я не сталкивался с ситуацией, когда строки помечаются как строки для перевода, до установки переводчика. Возможно причина в этом, чтобы проверить попробуй переместить строку
QString aaa = QObject::tr(QT_TR_NOOP("Hello"));

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




И, кстати, У тебя масло масленное получилось, используй либо макрос, либо QObject::tr()
aerosun
О, спасибо, разобрался.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.