2015-07-23 3 views
0

Я кодирую полноэкранное двуязычное приложение на Java. Полноэкранный режим означает, что языковая панель под рабочим столом будет скрыта от пользователя, и ... Мне это нужно! Итак, как я могу воспроизвести его программно ?!
Строго говоря, мне нужно знать, что такое текущий язык ОС, когда происходит событие изменения языка и способ его установки, когда это необходимо.
Как мне выполнить задачу?
Спасибо!Обнаружение при изменении языка ОС - Java

+1

Возможный дубликат [как определить язык операционной системы (языковой стандарт) из java-кода] (http://stackoverflow.com/questions/2469435/how-to-detect-operating-system-language-locale-from-java -code) – Cheesebaron

+0

Что касается обнаружения, когда он меняется, я догадываюсь, что не было бы никакого способа сделать это, кроме простого опроса. –

+0

@ Cheesebaron - Нет! Или ... не совсем! Тема, которую вы упомянули, касается только одного из моих трех вопросов! – user1389026

ответ

2

получить язык ОС:

System.getProperty("user.language"); 

установить язык ОС:

System.setProperty("user.language","..."); //... = What language you want to set it to 

Если вы просто хотите, чтобы изменить язык внутри Программа, с помощью выпадающего списка или что-то, просто добавьте ActionListener к компоненту и используйте метод set, упомянутый ранее, чтобы установить язык. System.setProperty("user.language",yourComboBox.getText()); Тогда вы можете просто установить язык внутри своей программы с помощью простых if-утверждений.

+0

Спасибо! Это позволяет решить 80% проблемы! – user1389026

0

Для работы с несколькими языками в Java обычно используется для работы с несколькими локалями.

Используйте либо

Locale defaultDisplayLocale = Locale.getDefault(Locale.Category.DISPLAY); 

или

Locale defaultFormatLocale = Locale.getDefault(Locale.Category.FORMAT); 

в зависимости от того, для чего вы хотите использовать локаль.

AFAIK, в стандартной библиотеке нет независимого от ОС способа для обнаружения изменений языка ОС. Возможно, вам придется вручную перезапустить приложение.

Смежные вопросы