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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Локализация диалогов  (Прочитано 5553 раз)
Fat-Zer
Гость
« : Декабрь 16, 2010, 21:17 »

Не понял, как оно работает
Старый топик
Пробовал так:
Код:
	QString locale = QLocale::system().name();
QTranslator translator;
translator.load(QString("eb_") + locale); // мой файл трансляции
translator.load(QString("$QTDIR/translations/qt_") + locale);
app.installTranslator(&translator);
В итоге мой перевод затирается, а диалоги остаются английскими
« Последнее редактирование: Декабрь 16, 2010, 22:30 от Fat-Zer » Записан
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« Ответ #1 : Декабрь 17, 2010, 00:37 »

2 объекта транслэтора надо. Один на Qt, другой на твое приложение.
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
Fat-Zer
Гость
« Ответ #2 : Декабрь 17, 2010, 01:38 »

всё равно не работает
Код:
	QString locale = QLocale::system().name();

QTranslator translator;
QTranslator qttranslator;

translator.load(QString("eb_") + locale);
qttranslator.load(QString("qt_ru"));
app.installTranslator(&translator);
app.installTranslator(&qttranslator);

ещё должен ли быть ts файл для qt? надо ли добавлять его в проект? откуда его взять? в дистрибутиве не установился из сорцов?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Декабрь 17, 2010, 06:33 »

Цитировать
ещё должен ли быть ts файл для qt?
для использования в своей программе нужен qm-файл (т.е. скомпилированный перевод).
Его можно взять в каталоге %QTDIR%/translations

Цитировать
в дистрибутиве не установился из сорцов?
Сначала определись используешь ли ты дистрибутив или сам собирал из исходников.
В обоих случаях он должен быть там, где я сказал. При полной сборке Qt он генерируется автоматически. Можно просто открыть ts-файл в Лингвисте и скомпилировать из него qm-файл.
« Последнее редактирование: Декабрь 17, 2010, 06:37 от lit-uriy » Записан

Юра.
Fat-Zer
Гость
« Ответ #4 : Декабрь 17, 2010, 07:17 »

Цитировать
Сначала определись используешь ли ты дистрибутив или сам собирал из исходников.
Сложно определится, что я использую Улыбающийся...(Gentoo)

Цитировать
для использования в своей программе нужен qm-файл (т.е. скомпилированный перевод).
Его можно взять в каталоге %QTDIR%/translations
Так и сделал, копировал его себе в папку, однако он не подцепляется (см. код выше) Почему?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Декабрь 17, 2010, 10:55 »

Ну коль линух, то и смотри внимательно описание метода QTranslator::load
« Последнее редактирование: Декабрь 17, 2010, 11:00 от lit-uriy » Записан

Юра.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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