Как добавить данные из MySQL в javafx, используя JFXTreeTableView У меня есть метод, чтобы добавить это в TableView, я использую этот код: Для My Connexion я использую это
static public ResultSet AllElement() {
try {
cnx = connecterDB();
st = cnx.createStatement();
rst = st.executeQuery("SELECT * FROM element");
} catch (Exception ex) {
ex.printStackTrace();
}
return rst;
}
В декларации контроллера
@FXML
private TableView<Object> TableElement;
@FXML
private TableColumn clmID, clmELement, clmPrix, clmQuantite;
ObservableList<Object> data;
в контроллере
public void tableElement() {
try {
data = FXCollections.observableArrayList();
int r = -1;
ResultSet rst = Tools.ConnexionJM.AllElement();
while (rst.next()) {
ObservableList<String> row = FXCollections.observableArrayList();
for (int i = 1; i <= 4; i++) {
row.add("" + rst.getString(i));
}
data.add(row);
}
TableElement.setItems(data);
} catch (SQLException ex) {
Logger.getLogger(FXMLDocumentController.class.getName()).log(Level.SEVERE, null, ex);
}
}
метод для столбцов
public void fillTableElement() {
clmID.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<ObservableList, String>, ObservableValue<String>>() {
public ObservableValue<String> call(TableColumn.CellDataFeatures<ObservableList, String> param) {
return new SimpleStringProperty(param.getValue().get(0).toString());
}
});
clmELement.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<ObservableList, String>, ObservableValue<String>>() {
public ObservableValue<String> call(TableColumn.CellDataFeatures<ObservableList, String> param) {
return new SimpleStringProperty(param.getValue().get(1).toString());
}
});
clmPrix.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<ObservableList, String>, ObservableValue<String>>() {
public ObservableValue<String> call(TableColumn.CellDataFeatures<ObservableList, String> param) {
return new SimpleStringProperty(param.getValue().get(2).toString());
}
});
clmQuantite.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<ObservableList, String>, ObservableValue<String>>() {
public ObservableValue<String> call(TableColumn.CellDataFeatures<ObservableList, String> param) {
return new SimpleStringProperty(param.getValue().get(3).toString());
}
});
tableElement();
}
Мой вопрос здесь, я хочу с тем же способом работать с My JFXTreeTableView, потому что это слишком простой и понятный код, проблема, которую я имею, я поставил
private JFXTreeTableView<Object> TableViewAP;
это говорит
Аргумент типа Object находится за пределами переменной типа S
где S - переменная типа:
S расширяет RecursiveTreeObject, объявленный в классе JFXTreeTableView, здесь я ничего не могу поделать?