java - 使用文档监听器实时显示搜索结果?

标签 java mysql swing

<分区>

我有一个显示在 JTable 中并存储在数据库中的“人员”列表。我非常希望用户在输入搜索区域时缩小该表中的结果范围。

例如,输入“S”会将显示的姓名缩小为“Susan”、“Stephen”、“Steve”,一旦你输入“Su”,显示的姓名就会缩小为“Susan”

我正在考虑使用 DocumentListener 方法 .removeUpdate(e).insertUpdate(e) 来调用搜索底层数据库并更新 TableView 的方法- 但这似乎很浪费。

实际上,我会创建一个新的数据库连接和其他数据库对象,并在每次键入任何字符时刷新表。我不确定这只是糟糕的设计,还是会主动给我带来问题?有没有更好的方法来解决这个问题?还是我应该坚持使用普通的搜索按钮?

最佳答案

I've a list of 'people' displayed in a JTable

如果所有人员都显示在 JTable 中,那么您可以使用 JTable 的过滤功能来显示表中行的子集。

阅读 Sorting and Filtering 上的 Swing 教程部分获取更多信息和工作示例。

关于java - 使用文档监听器实时显示搜索结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44376112/

相关文章:

mysql - AWS Pipeline CSV 到 RDS 解析错误

php - php连接文件存放在哪里?

java - 如果方法不能是静态的,则更新整数

java - 重置 Java Swing 中的微调器值

java - Log4j 字符串匹配——回调选项

java - 双链表困惑

java - 如何使用 selenium webdriver 在 IE10 中下载文件?

java - Java 线程的未知行为

php cookie 阻止对目录的访问

java - 在servlet中从swing接收数据