阅读here并且不理解这个概念,我不得不在这里发布我的问题。我正在尝试从关键字JTextField
获取输入值并过滤我的JTable
table_job
。
当按下搜索按钮时,它应该更改Job List
面板中的表格,以便仅在其表格的任何列中显示包含关键字的作业集。目前,我没有运气,我得到了空白屏幕。
这是职务清单屏幕
右边的表格不会根据关键字进行更新。
这是我尝试过的失败,我是表过滤的新手。
try {
jobTableInit();
String value = keyword.getText();
TableRowSorter sorter;
sorter = new TableRowSorter<DefaultTableModel>(new DefaultTableModel());
RowFilter<DefaultTableModel, Object> rowFilter = null;
try {
rowFilter = RowFilter.regexFilter(keyword.getText());
}
catch(java.util.regex.PatternSyntaxException ex) {
return;
}
sorter.setRowFilter(rowFilter);
table_job.setRowSorter(sorter);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
有人可以提出建议或给我一个简单的示例代码吗?
答案 0 :(得分:2)
默认情况下有两种方式
使用自定义Comparator并使用JTables
在XxxTableModel(或Pattern
视图)中进行搜索,有关比较器的更多信息,请参阅JTables tutorial
关于Sorting and Filtering
使用built_in RowFilter in TableRowSorter,然后过滤JTables view
返回所需的List_of_Xxx