java - "Quick find"用于 SWT 表

标签 java eclipse swt jface

我有一个显示数据库输出的表,通常可以达到或超过 10,000 行。我正在寻求实现一个“快速查找”功能,该功能将允许用户轻松滚动到具有他们搜索的值的行。

这个想法与 Chrome 或 Firefox 的快速查找非常相似。所以:

  1. 用户点击“CTRL+F”
  2. 弹出一个框:
  3. > quick find example
  4. 然后用户可以快速浏览表格,将/或/\推送到每个匹配值

我的问题是,这样的表已经存在了吗?我看过NatTableXViewer但它们似乎都是相对较小的变化而增加的相当大的部分。

我看过的另一个图书馆是 Lucene TableSearcher不幸的是,这是为过滤而不是突出显示而设计的。然而,这可能是一个值得研究的途径。

最佳答案

虽然不完全相同,但 JFace 确实支持过滤 View 。您在文本框中键入内容,然后查看内容缩小到与过滤器匹配的内容。这基本上是向用户呈现搜索/查找功能的另一种方式。

您可以在 Eclipse 首选项(对话框中关于导航树的过滤器文本字段)中看到这一点。请参见 org.eclipse.ui.dialogs.FilteredTree 类。我不相信有 FilteredTable 或等同物,但底层设施非常通用,因此将一个放在一起应该不需要太多工作。查看 FilteredTree 源代码并从那里开始。

关于java - "Quick find"用于 SWT 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4868461/

相关文章:

java - 使用 apache lucene 对字符串进行标记

java - 等待对话框关闭以将项目添加到回收器 View

java - Android Gradle 应用程序 :DexDebug error Parse. com

java - 使用 java 9 ea,Eclipse 无法安装并显示错误 "An error has occurred, see the log file null"

java - Eclipse 编译器说在注释中的枚举字段数组的情况下属性未定义

java - Eclipse插件: bind data to a list and refresh view

java - 使用 swt 在 Canvas 上加载缩略图需要太长时间

java - 向 ThreadPoolExecutor 的 BlockingQueue 添加任务是否可取?

java - 从插件中以编程方式显示 SWT 浏览器

eclipse - 在 Eclipse 中格式化 freemarker 文件