【发布时间】:2018-09-28 05:26:24
【问题描述】:
用最简单的方式来说,我想根据两个 DatePicker 中所选日期的日期范围过滤 TableView 中的数据。
有没有办法添加一个监听器或类似于在 TextFields 上使用 addListener 的方法,或者有没有更好的方法来解决这个问题?我找不到任何解释这个的教程。
我是否应该只针对在按下按钮时调用 Postgres 视图来更新表格?
在图像中,如果它正在工作,它将仅显示 TID 为 16 和 17 的行,其中“已打开”列中的日期介于日期范围之间。
【问题讨论】:
-
您想为第二个
DatePicker添加一个监听器。检查以确保第二个日期晚于第一个日期。接下来,根据日期范围过滤表格。我会亲自在TableView上使用FilteredList。 code.makery.ch/blog/javafx-8-tableview-sorting-filtering -
@Sedrick 谢谢,我已经有了日期约束,并且我尝试使用过滤列表将侦听器部分应用于日期,但发现所有格式都比我使用函数想出的要复杂得多调用结果在这些日期之间的视图。
-
@EstebanRodriguez 通常基于 2 个
LocalDates 创建一个Predicate应该不难。您是否在您的项目类别中使用java.sql.Date,或者您为什么认为这很复杂? -
@fabian 也许还不错,但是我的时间有限,而且基本上日期之间的格式让我受益匪浅,但现在回想起来,我似乎确实理解了日期格式,但日期之间的比较。我应该改为比较字符串吗?我希望我还有代码,但它基本上是 Sedrick 在第一条评论中链接的内容,除了我无法获得日期的比较部分。
标签: javafx datepicker tableview