显示jTable中两个给定日期之间的元素

时间:2011-02-15 00:42:45

标签: java swing date jtable tablesorter

我创建了一个jTable,在其中我创建了一个名为“date”的列。在两个jTextFields中输入两个不同的日期后,我想只显示jTable中给定时间段内的元素。日期格式为“YYYY-MM-DD”。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

阅读How to Use Tables上的Swing教程。阅读有关排序和过滤的章节,其中介绍了如何创建简单的regexFilter。

我使用以下代码修改TableFilterDemo以创建“和”过滤器。

// rf = RowFilter.regexFilter(filterText.getText(), 0);
List<RowFilter<Object,Object>> filters = new ArrayList<RowFilter<Object,Object>>(2);
filters.add(RowFilter.regexFilter(filterText.getText(), 0));
filters.add(RowFilter.regexFilter(filterText.getText(), 1));
rf = RowFilter.andFilter(filters);

一旦您理解了教程示例以及“和过滤器”的用法,您就可以尝试创建日期过滤器。

阅读RowFilter API以获取有关如何创建dateFilter的信息。创建一个在特定日期之后显示行的过滤器,并创建一个在特定日期之前显示行的过滤器。一旦你让每个过滤器分别工作,你就可以创建一个“和”过滤器。