Java 在日期选择器中表示天和月的更改

Java 在日期选择器中表示天和月的更改,java,javafx,datepicker,java-time,Java,Javafx,Datepicker,Java Time,我需要将Jalali日历添加到我的JavaFX应用程序中。我已经扩展了年表类,并在我的应用程序中添加了Jalalichrology。当我使用下面的代码块时,它会正确地检测我们在哪一年的哪一个月的哪一天 DatePicker datePicker = new DatePicker(); Locale.setDefault(new Locale("fa")); datePicker.setChronology(JalaliChronology.INSTANCE); 但是,我需

我需要将Jalali日历添加到我的JavaFX应用程序中。我已经扩展了年表类,并在我的应用程序中添加了Jalalichrology。当我使用下面的代码块时,它会正确地检测我们在哪一年的哪一个月的哪一天

DatePicker datePicker = new DatePicker();

Locale.setDefault(new Locale("fa"));
datePicker.setChronology(JalaliChronology.INSTANCE);
但是,我需要使用Jalali日历中使用的月和日的实际名称。现在我把一月看作是每年的第一个月,而我想把它换成一月

下面这张我从互联网上借来的照片告诉我,这应该是可行的,但我还不知道怎么做

另外,我知道我可以使用下面的块修改日历中每个单元格的显示文本

final Callback<DatePicker, DateCell> dayCells = new Callback<DatePicker, DateCell>()
{
    public DateCell call(final DatePicker datePicker)
    {
        return new DateCell()
        {
            @Override
            public void updateItem(LocalDate item, boolean empty)
            {
                ...
            }
        };
    }
};
final Callback dayCells=new Callback()
{
公共DateCell调用(最终日期选择器DatePicker)
{
返回新的DateCell()
{
@凌驾
public void updateItem(LocalDate项,布尔值为空)
{
...
}
};
}
};
是否有任何方法可以更改
一月
二月
,…,
周六
太阳
。。。和
Fri
在我的Jalali日历中

编辑:这里是我已经拥有的屏幕截图。设置了
Locale
后,它使用了波斯语,但我看到的只是
一月
是如何用波斯语拼写的(这就是
。它不使用Jalali日历中月份的实际名称,即


嗯。。。应该自动本地化。设置区域设置后是否尝试创建日期选择器?您确定您的区域设置包含在fx资源中吗?我已经编辑了我的问题,以便更好地回答您的问题。我可以看出我的区域设置已被fx资源覆盖。在设置区域设置后,我还尝试创建DatePicker,但没有看到任何更改。@kleopatra从编辑中看,名称似乎是自动本地化的,但它只是将月份名称直接从英语翻译成所需的语言。不幸的是,它似乎不知道这个月的年表有完全不同的名字。虽然这可能是OP的
年表
实现中的一个失败?我看到
DatePicker
使用
年表#date(TemporalAccessor)
然后格式化结果。但我对
java.time
和格式化的低层次工作方式了解得不够,因此无法确定这在这种情况下可能是一个失败点。