jfxtreetableview与数据库sql

fd3cxomn  于 2021-06-21  发布在  Mysql
关注(0)|答案(0)|浏览(238)

如何使用jfxtreetableview在javafx中添加来自mysql的数据?我有一个方法来添加这个在tableview我使用这个代码。
对于我的连接,我使用:

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();
    }

我的问题是:我想用同样的方法来处理我的jfxtreetableview,因为它太简单,代码太清晰了,我的问题是

private JFXTreeTableView<Object> TableViewAP;

上面写着
类型参数对象不在类型变量的范围内
哪里 S 是类型变量;s延伸 RecursiveTreeObject<S> 在课堂上宣布 JFXTreeTableView 我什么都帮不了?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题