当我开始输入文本字段时如何制作自动完成列表?

时间:2011-08-29 06:30:00

标签: java swing autocomplete intellij-idea jtextfield

我有一个文本字段,如果我想在字段中写一些内容,它会显示有关该字母的可能选项列表,我认为这称为自动完成。

有人可以给我一个关于如何做的想法或样本吗?

谢谢..

3 个答案:

答案 0 :(得分:4)

选择一个组合框并收听文本字段中的所有更改。在每个事件中,阅读实际内容并查询源列表以查找可能的匹配项。然后使用结果填充相关列表。

一旦用户输入了两三个字母,您可能想要启动自动完成功能,否则列表可能会太长...

答案 1 :(得分:2)

外观hereAutoCompleteComboBox / JFextFieldJComboBox有两个类,JTextField有两个类,通知自动完成功能需要两个类

答案 2 :(得分:1)

我感觉很慷慨,因为你真的应该google ...

当用户输入时,您需要使用like '<userInput>%'查询数据库并将结果返回到下拉列表中。您可能希望等待用户输入的暂停,以免锤击您的数据库。

在没有数据库的情况下,一个适合此情况的数据结构称为Trie,因为您可以遍历初始输入并显示所有后续单词。