根据秋千地区的地理位置更改工作日



我正在使用可以同时使用英语和德语运行的应用程序(摇摆应用程序)。有一个日期选择器的要求,因为他们使用了(source forge.net)

的jdatepickerimpl

现在的要求是

如果该申请在英语周的开始日是星期日.....星期六

如果申请在德语周的开始日为星期一.....星期日

但JDATEPICKERIMPL在周日,星期一,........星期六

如何根据语言环境更改一周的开始日...

这是我的代码片段....

   private JFormattedTextField.AbstractFormatter format = 
   new  JFormattedTextField.AbstractFormatter(){

private static final long serialVersionUID = 1L;
@Override
public String valueToString(Object value) throws ParseException {

    Calendar cal = (Calendar) value;
    if (cal == null) {
    return "";
    }
    return DateUtil.dateToString(
        PlasaApplication.getTranslator().getCurrentLanguage()
            .equals("de") ? DateUtil.germanDateFormat
            : DateUtil.usDateFormat, cal.getTime());
}
@Override
public Object stringToValue(String text) throws ParseException {

    return DateUtil.getDateFromString(text,
        PlasaApplication.getTranslator().getCurrentLanguage()
            .equals("de") ? DateUtil.germanDateFormat
            : DateUtil.usDateFormat);
}
};
private JDatePickerImpl fromDatePicker = (JDatePickerImpl) JDateComponentFactory
    .createJDatePicker(format);

private JDatePickerImpl toDatePicker = (JDatePickerImpl) JDateComponentFactory
    .createJDatePicker(format);

您需要查看jdatepickerimpl的API,看看它是否有办法设置一周的开始日。如果它确实以相同的方式调用该方法,则为每个语言环境值设置日期格式。

如果没有,那么使用该特定日期选择器没有什么可以做的。您需要自己制作自己的变体或使用其他日期选择器。

将这些行添加到您的代码中,并根据您的要求将其设置。默认情况下,正在拾取系统语言环境。

datePicker.setLocale(new Locale("es", "ES"));
datePicker.setDateFormat(DateFormat.FULL);

有关更多信息。

最新更新