Как я могу включить C:\Qt\5.9.1\msvc2015\translations .qm файлы (файлы Qt framework qm) в проект Visual Studio Qt?

Как я могу включить файлы C:\Qt\5.9.1\msvc2015\translations .qm (файлы Qt framework qm) в окончательный выпуск, проект Visual Studio Qt?

Я загружаю файлы, используя:

    QTranslator* qtTranslator = new QTranslator();
bool ok = qtTranslator->load("qt_" + language, QLibraryInfo::location(QLibraryInfo::TranslationsPath));

в выпуске и отладке переводы работают, но в окончательной сборке они не работают, и наиболее вероятно, что это потому, что они не добавлены.

Я заметил, что если я перенесу их в свой проект, они не будут загружены.

2 ответа

Решение

Файлы перевода qt framework должны быть добавлены в папку переводов проекта вместе с qt_xx.qm, должны быть добавлены соответствующие файлы зависимостей qm.

qt_xx.qm содержит только имена этих файлов - здесь есть другой ответ, объясняющий это: переводы QMessageBox не работают в Qt5.3

Просто попробуйте это:

QTranslator translator;   
if(translator.load("E:/Qt/Linguist/translation_fa.qm"))
    qDebug()<<"successfully load qm file.";
else
    qDebug()<<"problem in load qm file.";
Другие вопросы по тегам