我有一个标准的JTable,里面有一些数据。我想创建一个自动过滤功能:当用户在特定文本字段中键入过滤过程自动启动的单词,而无需单击按钮。是否可以在Java Swing中使用?
答案 0 :(得分:1)
是的,有可能!
启动SwingSet3演示(来自Swinglabs):http://download.java.net/javadesktop/swingset3/SwingSet3.jnlp
在数据类别中,有一个JTable演示,列出了奥斯卡候选人和获奖者。
标题为“搜索标题和收件人”的TextField正是您想要的。 SwingSet3 Demo甚至可以让你通过ComboBox条目“设置搜索过滤器”突出显示代码片段。
第一个片段中的RowFilter忽略了前导“The”和“A”以匹配更多电影片名。我会用这个
替换RegEx模式".*" + filterString + ".*"
获取真实的“在我输入时找到所有内容”用户体验。
第二个片段向您展示了如何在每次按键时实现DocumentListener
刷新表过滤器。
答案 1 :(得分:-3)
是的,可能。阅读JTable API并按照“如何使用表”的Swing教程链接,在这里您可以找到一个有效的过滤示例。