Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing_ru и интернационализация / 5 сообщений из 5, страница 1 из 1
18.12.2006, 17:24:56
    #34208239
RadV2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing_ru и интернационализация
Для руссификации диалогов приложения использовал файл Swing_ru.jar.
Теперь встал вопрос об интернационализации приложения, т.е. работа поочередно на нескольких языках без перекомпилляции приложения. Устанавливаю локаль в en, но диалог FileChooser все равно показывает русские названия.
Стал копать исхоодники в JDK и обнаружил, что там теперь нет файлов *.properties, но есть файлы *.java.
Вопрос: нужно ли переделать Swing_ru.jar, записав туда новые классы для *_ru.class или как-то можно использовать старый файл для интернационализации приложений с файлами _ru.properties?
...
Рейтинг: 0 / 0
19.12.2006, 16:46:51
    #34211032
Дуремар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing_ru и интернационализация
Тоже сталкивался с этим - решил "в лоб" - перестал использовать стандартные диаложки, написал свои... Только вот с FileChooser'ом проблема - самому лень писать...
...
Рейтинг: 0 / 0
19.12.2006, 17:12:12
    #34211103
RadV2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing_ru и интернационализация
В общем заменил все файлы *_ru.properies на сооответствующие *_ru.class.
Для motif и windows английские исходники взял в src.zip. Перевел, пропустил через native2ascii.
Для остальных исходников не оказалось. Пришлось дезассемблировать из rt.jar. Потом подобным же путем.
В итоге все равно ничего не получилось. Только диалог принтера "слушает" локаль и соответственно изменяет язык.
Диалоги выбора файла и цвета остаються русскими, независимо от локали.
Кто знает, куда дальше копать?
...
Рейтинг: 0 / 0
20.12.2006, 13:13:41
    #34212957
RadV2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing_ru и интернационализация
Продолжил эксперименты, заменил язык и настройках операционной ситемы. После перезагрузки диалоги выбора файлов и цвета тоже стали выводиться на английском языке.
Таким образом эти диалоги "смотрят" на язык операционной системы, в отличие от диалога вывода на печать, который срабатывает просто от изменения локали в самой программе.
Вот такое неоднозначное поведение диалогов...
...
Рейтинг: 0 / 0
18.01.2007, 16:01:20
    #34265520
Bobok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Swing_ru и интернационализация
Вот к чему пришел я, пользуясь полейнейшим методом научного тыка и копания в исходниках.
Этот метод нужно вызывать при изменении локали. Здесь диалоги не полностью
настраиваются, но идея думаю ясна. Констант для первого параметра я так и не нашел :(
getConfigLocaleString - метод, который возвращает локализованную строку по ключу
public static void prepareStandartDialogButtonText() {
UIManager.put("OptionPane.cancelButtonText", getConfigLocaleString("Cancel"));
UIManager.put("OptionPane.yesButtonText", getConfigLocaleString("Yes"));
UIManager.put("OptionPane.noButtonText", getConfigLocaleString("No"));
UIManager.put("FileChooser.cancelButtonText", getConfigLocaleString("Cancel"));
UIManager.put("FileChooser.directoryOpenButtonText", getConfigLocaleString("Open"));
UIManager.put("FileChooser.updateButtonText", getConfigLocaleString("Update"));
}
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing_ru и интернационализация / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]