Russian Qt Forum

Qt => Интернационализация, локализация => Тема начата: malor от Октябрь 26, 2013, 21:55



Название: Не локализовались надписи на русский язык.
Отправлено: malor от Октябрь 26, 2013, 21:55
На вышел русский текст заместо английского в метках и в заголовках столбцов грида.

Делал как писал Max Schlee.

1) lupdate TextFinder.pro

Создалось пара файликов:
TF_ru.ts
TF_en.ts



2) linguist TF_ru.ts

Указываю переводы. Затем жму Файл --> Скомпилировать.

(http://s002.radikal.ru/i200/1310/ad/63b47f5fd143.jpg)


3) Подгружаю "TF_ru.qm"  в коде:

Код:
// File: main.cpp
// Modified: october

#include "textfinder.h"
#include <QApplication>
#include <QTranslator>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QTranslator* pTranslator = new QTranslator(0);
    pTranslator->load("TF_ru.qm", ".");
    a.installTranslator(pTranslator);

    TextFinder w;
    w.show();
   
    return a.exec();
}

Но в итоге на форме английские слова:

(http://s018.radikal.ru/i500/1310/3c/63f198fb0679.jpg)

Странно, да?

qt-4.8.4 / QtCreator 2.6.2


Название: Re: Не локализовались надписи на русский язык.
Отправлено: _OLEGator_ от Октябрь 26, 2013, 22:57
Для начала посмотри, что возвращает pTranslator->load(...)


Название: Re: Не локализовались надписи на русский язык.
Отправлено: kambala от Октябрь 26, 2013, 23:52
если TF_ru.qm лежит не возле твоего экзешника, то локализация не загрузится. надо либо его туда поместить либо указать правильный путь в load()


Название: Не локализовались надписи на русский язык [pTranslator->load("TF_ru.qm", ".");]
Отправлено: malor от Октябрь 27, 2013, 00:03
Возвращало false. Подложил рядом с exe-файлом и всё заработало.