我想知道是否有人知道如何格式化GWT日期选择器的datepickerMonth
?
当前格式为2020 Jan
,我正在寻找为January 2020
。
我已经遍历了GWT Datepicker Javadoc,但是找不到任何访问该值的方法。
我正在使用GWT 2.8.1。
我设法在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
。
这是结果: