在我的程序中,我创建了一个包含许多名称的 Excel 工作表。在 GUI 中有一个文本字段。我想要的是,当用户开始输入字符时,Excel 工作表中以这些字符开头的所有名称都应该被拉出并显示。如果用户输入更多字符,列表应相应更改。用户还应该能够使用鼠标选择这些名称之一以进行进一步处理。 例如: Excel 工作表 安迪 角度 爱丽丝 澳大利亚 约翰 简
用户开始输入“a” 输出 : 安迪 角度 爱丽丝 澳大利亚
下一个字母“an” 输出: 安迪 天使 等等 提前致谢,如果这是一个基本问题,抱歉
最佳答案
- 为了避免一遍又一遍地搜索文件,您需要将数据存储在某种数据结构中。
- 您还需要雇用
DocumentListener
检查每次文档更改(即从文本字段中输入或删除字母 - 根据您希望如何显示数据,您可以根据文本字段中匹配的输入相应地更新 View 的模型。
- 建议可能使用
JList
。 - 另一个选择是实现自动完成文本字段,如 this answer 中的示例。 ,它也使用
DocumentListener
。我相信您还可以搜索其他自动完成 Java 实现。
关于Java GUI 搜索数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21018086/