2013-01-04 2 views

ответ

2

К сожалению, ограничение 12/24 часов установки часов на что-то другое, чем говорит Locale, не поддерживается.

Чтобы добавить такую ​​услугу, я бы наследовал InlineDateField и добавлял методы для переопределения 12-24 часов. На стороне клиента нужно взглянуть на VCalendarPanel.java и добавить передать этот параметр в оператор if, который вызывает getDateTimeService(). IsTwelveHourClock().

С другой стороны - возможно, было бы проще каким-то образом определить пользовательский язык для набора всех поддерживаемых локалей.

Третья хакерская альтернатива - переопределить класс LocaleService.java в процессе копирования GWT и гарантировать, что isTwelveHourClock() возвращает false.

(не протестировать любой из этих подходов)

+0

Спасибо за ваш ответ. – Kevin

+1

Успешно в соответствии с первым предложением. – Kevin

+0

Вот реализация https://vaadin.com/directory#addon/customwidgetset – Kevin

0

Вы можете использовать метод setLocale() для настройки представления формата даты.

// German language specified with ISO 639-1 language 
// code and ISO 3166-1 alpha-2 country code. 
date.setLocale(new Locale("de", "DE")); 

Больше информации here и here.

+0

Thanks.However, я хотел бы, чтобы отобразить пользовательский интерфейс на китайском или английском языке, не Germany.How я могу это сделать? – Kevin

+0

локаль управляет настройками отображения даты и времени определенного языка или страны. Поэтому в вашем случае я рекомендую вам использовать Великобританию для Великобритании. Они используют формат 24 часа. – nexus

+0

Итак, нет решения для управления настройками китайского дисплея? Какая питти! Возможно, это ошибка. – Kevin

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