JavaFX tableview按组合框选择项筛选

时间:2017-11-23 23:36:08

标签: java javafx combobox tableview scenebuilder

我在javafx和场景构建器中使用了noob。我想通过从组合框中选择一个项来填充tableview。有可能的?

我尝试使用String val = combobox.getValue()并将字符串放在prepareStatement中的SQL查询中以直接排序,但app停止在空字符串值且tableview未更新。

谢谢你们!

1 个答案:

答案 0 :(得分:0)

即使在ComboBox获取输入之前,也可能使用ComboBox值初始化String。在这种情况下,ComboBox将返回一个空值。

您应该为ComboBox添加一个onAction事件,它将更新字符串。 您可以使用以下代码段来执行此操作

comboBox.setOnAction((event) -> {
  val = comboBox.getValue();
//Any other action you want to carry out when an item of the combo box is selected
});

或者,如果您正在使用FXML文件并想在控制器中添加onAction事件,则可以使用此功能。

public void comboBoxEvent(ActionEvent event){
  val = comboBox.getValue();
} // Use this code when working with FXML files 

这两个例子都假设String var是全局定义的。只是为了更安全,当你将var与另一个值进行比较或将其存储在其他地方时,你应该把它置于if条件下

if(var != null)
  //Code segment here