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

标签 java timezone vaadin vaadin8

我希望 DateField 默认为我用户的时区。我试过 DateField.setZoneId() 但这似乎真的没有做任何事情。然后我尝试执行 DateField.setDefaultValue(LocalDateAdjustedForTimeZone) 这主要是因为蓝色框被正确突出显示但黑色轮廓仍然在服务器的时区下。 enter image description here

最佳答案

据我在 Vaadin 客户端组件 VAbstractCalendarPanel#buildCalendarBody() 中所见,没有办法影响用 today CSS 样式标记哪一天 v-datefield-calendarpanel-今天-今天。关于确定“今天”的客户端组件 Java 代码如下所示:

final Date tmp = new Date();
final Date today = new Date(tmp.getYear(), tmp.getMonth(), tmp.getDate());

所以我想当它被翻译成 JavaScript 时,它将采用浏览器系统上的当前日期。

但是,作为一种解决方法,您至少可以调整 CSS 样式以隐藏今日标记。我想知道为什么 Vaadin 没有考虑您的用例(这也是我的)。你能在 Vaadin 打开一个问题吗?

关于java - 如何在 Vaadin 8 中设置 DateField 以根据用户的时区突出显示默认日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48386518/

相关文章:

java - Vaadin:组件未居中

java - 在 JFrame 中将 JBusyComponent 与 JTable 一起使用

java - 使用 Java 将文档上传到共享点的 API

java - SerialContext 的通信异常 [myEnv= Glassfish 3.1.2.2 中的异常

php - 将 UTC 偏移量转换为时区或日期

python - 如何仅使用标准库将 UTC 日期时间转换为本地日期时间?

java - Ant 构建不包含 Android 支持库 jar

php - 在 PHP 和 MySQL 中处理时区

java - 如何在 Vaadin 中设置 View 级别的授权

Spring + Vaadin 整合设计模式