组合框整数到可观察列表

时间:2014-07-08 17:09:22

标签: java javafx-8 scenebuilder

我在将Integer值设置为可观察列表时遇到问题。

我有以下代码,以及组合框中的一些Integer值。按下按钮时,我想将组合框中的整数添加到可观察列表中。我能用Strings做到这一点,但这并不适用于Integer。我还需要以整数形式获取数据,因为我需要进行一些计算。有没有人有想法?

public class Resultat {
public SimpleStringProperty res_Auswärtsteam = new SimpleStringProperty();
public SimpleIntegerProperty res_Auswärtstore = new SimpleIntegerProperty();

public Integer getRes_auswärtstore() {
    return res_Auswärtstore.get();
}

public String getRes_auswärtsteam() {
    return res_Auswärtsteam.get();
}

}

public class Resultat_Controller implements Initializable {
// The table and columns
@FXML TableView<Resultat> result_tableview;
@FXML TableColumn result_Auswärtstore;
@FXML TableColumn result_Auswärtsteam;

@FXML Button result_btn_Hinzufügen;

@FXML ComboBox result_cbo_Auswärtstore;
@FXML ComboBox result_cbo_Auswärtsteam;

// The table's data
ObservableList<Resultat> data;

@Override
public void initialize(URL url, ResourceBundle rb) {
    // Set up the table data

    result_Auswärtstore.setCellValueFactory(new PropertyValueFactory<Resultat, Integer>("res_auswärtstore"));
    result_Auswärtsteam.setCellValueFactory(new PropertyValueFactory<Resultat, Integer>("res_auswärtsteam"));

    data = FXCollections.observableArrayList();
    result_tableview.setItems(data);

    result_cbo_Auswärtstore.getItems().clear();
    result_cbo_Auswärtstore.getItems().addAll("1", "2", "3", "4");
    result_cbo_Auswärtsteam.getItems().clear();
    result_cbo_Auswärtsteam.getItems().addAll("String 1", "String 2", "String 3", "String 4");
}    

@FXML
private void handleButtonAction(ActionEvent event) {
    Resultat resultateintrag = new Resultat();
    resultateintrag.res_Auswärtsteam.setValue(result_cbo_Auswärtsteam.getValue().toString());
    resultateintrag.res_Auswärtstore.setValue(2);
    data.add(resultateintrag);
}

}

目前我设置了默认值2(显然应该消失)。 感谢

1 个答案:

答案 0 :(得分:0)

您的@FXML字段缺少通用类型。将ComboBox更改为ComboBox<Integer>ComboBox<String>。同样,TableColumn字段应分别为TableColumn<Resultat, Integer>TableColumn<Resultat, String>ComboBoxTableColumn的文档提供了更多信息。