Java 如何在Vaadin 8中设置DateField以根据用户';突出显示默认日期;s时区
我希望Java 如何在Vaadin 8中设置DateField以根据用户';突出显示默认日期;s时区,java,timezone,vaadin,vaadin8,Java,Timezone,Vaadin,Vaadin8,我希望日期字段默认为我用户的时区。我尝试了DateField.setZoneId(),但这似乎没有任何作用。然后我尝试执行DateField.setDefaultValue(LocalDateAdjustedForTimeZone),主要是因为蓝色框正确高亮显示,但黑色轮廓仍保留在服务器的时区下。就我在Vaadin客户端组件VAbstractCalendarPanel#buildCalendarBody()中所见,无法影响使用今日CSS样式标记哪一天v-datefield-calendarpan
日期字段
默认为我用户的时区。我尝试了DateField.setZoneId()
,但这似乎没有任何作用。然后我尝试执行DateField.setDefaultValue(LocalDateAdjustedForTimeZone)
,主要是因为蓝色框正确高亮显示,但黑色轮廓仍保留在服务器的时区下。就我在Vaadin客户端组件VAbstractCalendarPanel#buildCalendarBody()
中所见,无法影响使用今日CSS样式标记哪一天v-datefield-calendarpanel-day-today
。关于确定“今天”的客户端组件Java代码如下所示:
final Date tmp = new Date();
final Date today = new Date(tmp.getYear(), tmp.getMonth(), tmp.getDate());
所以我猜当它被翻译成JavaScript时,它将以浏览器系统上的当前日期为准
但是,作为一种解决方法,您至少可以调整CSS样式以隐藏today标记。我想知道为什么Vaadin没有考虑您的用例(它也是我的)。你能在瓦丁开一个问题吗?见