Динамическая смена языков |
Здравствуйте, гость ( Вход | Регистрация )
Динамическая смена языков |
_Vitaliy_ |
4.9.2009, 21:23
Сообщение
#1
|
Студент Группа: Участник Сообщений: 59 Регистрация: 20.11.2008 Пользователь №: 428 Спасибо сказали: 3 раз(а) Репутация: 0 |
Доброго времени суток всем.
Есть вопрос. Как организовать динамическую смену языков в приложении. Т.е. имеем приложение с несколькими формами, в главном окне имеем меню, в нем есть пункт "Настройка", при выборе которого открывается окно настроек, в нем при помощи комбобокса выбираем "рус." или "англ." жмен баттон "ок" и происходит смена языка. Если у кого есть что-то наподобие или более-менее добротные наброски поделитесь плиз с новичком в этом вопросе. Единственное есть просьба к Шлее и Бланшет не отправлять... |
|
|
AD |
4.9.2009, 23:22
Сообщение
#2
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
Можно сделать так. В файле написать нужные названия на английском и русском языках. Распарсить файл, поместить в список, а затем, с помощью setText для каждого элемента поставить нужное название.
|
|
|
SABROG |
4.9.2009, 23:43
Сообщение
#3
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
А этот метод не устроит http://doc.trolltech.com/latest/tools-i18n.html ?
|
|
|
_Vitaliy_ |
5.9.2009, 8:56
Сообщение
#4
|
Студент Группа: Участник Сообщений: 59 Регистрация: 20.11.2008 Пользователь №: 428 Спасибо сказали: 3 раз(а) Репутация: 0 |
А этот метод не устроит http://doc.trolltech.com/latest/tools-i18n.html ? Посмотрел, спасибо SABROG, вроде оно, как говорится незнание закона не освобождает от ответственности... :-) Вопрос: там в примере только одна форма, будет ли это работать когда в приложении несколько форм? |
|
|
BRE |
5.9.2009, 9:54
Сообщение
#5
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
|
|
|
SABROG |
5.9.2009, 10:10
Сообщение
#6
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
А еще почитать про этот метод
void QCoreApplication::installTranslator ( QTranslator * translationFile ) [static] |
|
|
_Vitaliy_ |
5.9.2009, 11:10
Сообщение
#7
|
Студент Группа: Участник Сообщений: 59 Регистрация: 20.11.2008 Пользователь №: 428 Спасибо сказали: 3 раз(а) Репутация: 0 |
|
|
|
ufna |
6.9.2009, 17:02
Сообщение
#8
|
Активный участник Группа: Участник Сообщений: 362 Регистрация: 24.5.2008 Из: Курган/СПб Пользователь №: 182 Спасибо сказали: 29 раз(а) Репутация: 5 |
вообще, прочитка ассистанса дала следующий результат: если виджет уже создан, то язык в нем можно менять только ловля ChangeEvent, а в нем уже задавать все tr(). Тогда установка транслятора будет менять язык "на лету".
Может быть, есть еще какие варианты, но я нашел только такой. Его же и реализовал. Главное, не забывать, что два одинаковых tr() косо обрабатываются лингвистом. Т.е.:
Сообщение отредактировал ufna - 6.9.2009, 17:05 |
|
|
Текстовая версия | Сейчас: 29.3.2024, 18:31 |