【问题标题】:scroll/search JList when user starts typing当用户开始输入时滚动/​​搜索 JList
【发布时间】:2011-02-02 10:55:32
【问题描述】:

我希望允许用户单击 JList,如果输入了单词,则进行查询并将插入符号推进到下一个匹配项(前缀)。在Java中是否有这种实现的例子?我正在考虑主要听众getNextMatch()setSelectValue() 的组合。

【问题讨论】:

    标签: java search autocomplete jlist caret


    【解决方案1】:

    我建议你看看glazed lists,或者java/Swing中的其他补全实现。

    【讨论】:

      【解决方案2】:

      JXList of Swinglabs 与您正在寻找的东西完全相同

      试试:

      https://swinglabs-demos.dev.java.net/

      【讨论】:

      • 我查看了演示,它有一个我需要的示例。谢谢您的建议。看起来神奇的成分是 AutoCompleteDecorator.decorate(...)。但是,此示例似乎存在问题,因为它变得“粘滞”。如果您键入某些内容,它会转到正确的位置,但随后它会保持“阻塞”状态,或者失去焦点。我需要点击列表重新开始工作。那里出了什么问题?
      • @alex 我没有看到你提到的行为。我使用 Java 版本“1.6.0_17”的 Java 尝试了演示,焦点仍然在列表上,让我继续输入其他内容,荧光笔继续匹配文本。
      • 很奇怪,但我想我明白为什么。我使用 1.6.0_17 并且当您在 jList 上键入时一切都很好,但是如果您在文本字段上键入它并不清楚。所以本质上它一直在前一个匹配中添加字母,但是这样一个新单词不存在,所以它不会移动。如果您使用退格键清除先前的输入,则它可以工作。反正我打算隐藏文本字段...
      • 文本框上的行为不是错误。我认为这是您希望 UI 表现如何的“品味”问题。对我来说,那个文本框的行为看起来很自然;但您似乎有一些不同的期望,这可能是完全有效的。
      猜你喜欢
      • 2017-07-02
      • 1970-01-01
      • 1970-01-01
      • 2020-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多