Мне удалось сделать это в GWT 2.7. Я полагаю, что это будет работать и в 2.8 - если нет, пожалуйста, дайте мне знать.
Если вы посмотрите на реализацию DatePicker
, вы увидите, что она использует DefaultMonthSelector
, DefaultCalendarView
и CalendarModel
.
CalendarModel
- это то, что нас интересует, поскольку оно обеспечивает monthAndYearFormatter
, которое отвечает за рендеринг 2020 Jan
. К сожалению, вы не можете установить собственный CalendarModel
, поэтому нам нужно создать подкласс DatePicker
.
Метод getMonthAndYearFormatter()
возвращает PredefinedFormat.YEAR_MONTH_ABBR
, и нам нужно изменить его на PredefinedFormat.YEAR_MONTH
, чтобы получить полный месяц имя. Или измените его на любое другое.
Итак, вам просто нужно переопределить этот метод следующим образом:
public class MyDatePicker extends DatePicker {
public MyDatePicker() {
super(new DefaultMonthSelector(), new DefaultCalendarView(), new CalendarModel() {
@Override
protected DateTimeFormat getMonthAndYearFormatter() {
return DateTimeFormat.getFormat(PredefinedFormat.YEAR_MONTH);
}
});
}
}
Просто используйте MyDatePicker
вместо DatePicker
.
И вот результат: