Название: QT4.2.1 Проблемы с локализацией Отправлено: aliks-os от Апрель 02, 2007, 12:12 Использую QT4.2.1 и SuSE 10.2
Для загрузки файла перевода использую следующий код QString locale = QLocale::system().name(); QTranslator translator; translator.load(QString("qwe_") + locale); app.installTranslator(&translator); Однако локализация не работает. Начинаю проверять, что при выполнении возвращает мне переменная locale...Она принимает значение ru_RU. Как мне добиться чтобы она принимала значение только ru ? Название: QT4.2.1 Проблемы с локализацией Отправлено: SABROG от Апрель 02, 2007, 12:21 Так ?
Код:
Название: QT4.2.1 Проблемы с локализацией Отправлено: aliks-os от Апрель 02, 2007, 12:30 Попробую. Я думал что есть более красивый способ выдергивать краткое название языка без страны.
В любом случае спасибо :) Название: QT4.2.1 Проблемы с локализацией Отправлено: Вудруф от Апрель 02, 2007, 13:15 Как вариант, искать ВСЕ файлы перевода и "выдирать" из них язык.
См. examples/I18N Код:
Код:
Название: QT4.2.1 Проблемы с локализацией Отправлено: noosooth от Апрель 02, 2007, 16:36 Вообще-то QTranslator::load("trans.xx_XX"); проверяет наличие
"trans_xx_XX.qm" и ежели не находит, то пытается подгрузить "trans_xx.qm". Так что Код: QString locale = QLocale::system().name(); должна автоматом подгрузить trans_ru.qm, даже если locale равна "ru_RU". По крайне мере под виндой это так. В линуксе разве по другому? Сдается мне что и в нем должно работать. Название: QT4.2.1 Проблемы с локализацией Отправлено: aliks-os от Апрель 03, 2007, 08:36 Теоритически так, во всяком случае не срабатывает
Название: QT4.2.1 Проблемы с локализацией Отправлено: SABROG от Апрель 03, 2007, 08:42 А что именно не работает ? Твои файлы локализации или общие ? Я например определяю по контекстному меню QLineEdit, если слова "Копировать", "Вставить" на русском, значит пашет.
Название: QT4.2.1 Проблемы с локализацией Отправлено: noosooth от Апрель 03, 2007, 11:56 Цитата: "aliks-os" Теоретически так, во всяком случае не срабатывает Кстати, Код: translator.load(QString("qwe_") + locale); что возвращает? Может просто не в том каталоге смотрит? Название: QT4.2.1 Проблемы с локализацией Отправлено: aliks-os от Апрель 04, 2007, 11:49 этот код возвращает ru_RU,
каталог верный Название: QT4.2.1 Проблемы с локализацией Отправлено: noosooth от Апрель 04, 2007, 13:23 Цитата: "aliks-os" этот код возвращает ru_RU, каталог верный Я спросил что возвращает ф-ция: Код: bool QTranslator::load (...) |