编程语言
首页 > 编程语言> > java – 如何在Vaadin 8中设置DateField以根据用户的时区突出显示默认日期

java – 如何在Vaadin 8中设置DateField以根据用户的时区突出显示默认日期

作者:互联网

我希望将DateField默认为我的用户的时区.我已经尝试过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样式以隐藏今天标记.我想知道为什么Vaadin没有考虑你的用例(也是我的用例).你能在Vaadin开一个问题吗?

标签:java,timezone,vaadin,vaadin8
来源: https://codeday.me/bug/20190705/1389400.html