【问题标题】:How to show search result in a TableView as drop down a TextField in JavaFX?如何在 TableView 中将搜索结果显示为 JavaFX 中的下拉 TextField?
【发布时间】:2019-10-13 17:59:45
【问题描述】:

我需要在文本字段中搜索某些内容,结果应在表格视图内的同一文本字段中显示为下拉列表。

【问题讨论】:

标签: java search javafx combobox textfield


【解决方案1】:

关于自动完成:您可以使用 TextField 并使用 ControlsFX TextFields 添加自动完成绑定:

TextField textField = new TextField();
TextFields.bindAutoCompletion(textField, "Paris", "Rome", "Amsterdam");

我不明白您所说的“在 tableview 中”是什么意思。

【讨论】:

  • 我想他想用Textfield输入过滤tableview
  • 如果是这样,他可以看看this问题。
  • 实际上我需要的是搜索并将人员数据提取到文本字段中。文本字段用于按姓名、联系电话、登记号码搜索人员。当我开始输入时,它将在数据库中搜索并将结果显示为文本字段的下拉菜单。此下拉菜单包含 RegNo、姓名、手机号码作为表格视图。当我在表格视图中选择一行时,它会将 fetch reg no 填充到搜索的文本字段中。
  • 不幸的是,ControlsFX 的AutoCompletionBinding<T> 只允许您提供StringConverter<T> 而不是可以添加TableView<T> 作为图形节点的单元工厂。 AutoCompletionBinding<T> 的实现使用 AutoCompletePopup<T>,它基本上是 PopupControl。所以我相信如果你想要的不仅仅是一个文本列表,ControlsFX 不是解决方案。
  • 一个简单的解决方案可能是这样的:使用可编辑的ComboBox,您可以通过提供单元工厂将TableView 作为ComboBox 的图形。当用户开始输入时,通过从数据库中获取新项目来更改 ComboBox 的项目。您需要处理一些事情,例如在用户开始输入时显示 ComboBox 的项目并在用户离开时隐藏它们。
猜你喜欢
  • 2020-06-28
  • 2017-11-03
  • 1970-01-01
  • 1970-01-01
  • 2019-06-04
  • 1970-01-01
  • 2014-09-22
  • 2019-11-05
  • 2020-07-08
相关资源
最近更新 更多