0

私のプロジェクトでは、JavaFX の TreeTableView を使用して、BillingTableRow タイプのオブジェクトをいくつか表示しています。セル エディターを実装しましたが、onEditCommit イベントを設定しようとすると、一致するコンテンツ タイプを取得できません。

タイプ BillingTableRow のオブジェクト内にタイプ String の名前を格納する列の 1 つのコードを次に示します。

    // Name column
    Callback<TreeTableColumn<BillingTableRow, String>, TreeTableCell<BillingTableRow, String>> nameCallback = new Callback<TreeTableColumn<BillingTableRow, String>, TreeTableCell<BillingTableRow, String>>() {
        @Override
        public TreeTableCell<BillingTableRow, String> call(TreeTableColumn<BillingTableRow, String> p) {
            return new TextFieldTreeTableCell<BillingTableRow, String>();
        }
    };
    nameColumn.setCellFactory(nameCallback);
    nameColumn.setOnEditCommit(new EventHandler<CellEditEvent<BillingTableRow, String>>() {
        @Override
        public void handle(CellEditEvent<BillingTableRow, String> t) {
            ((BillingTableRow) t.getTableView().getItems().get(t.getTablePosition().getRow())).setName(t.getNewValue());
        }
    });

誰かが何が悪いのか教えてもらえますか? Eclipse で次のエラーが発生します。

TreeTableColumn 型の setOnEditCommit(EventHandler< TreeTableColumn.CellEditEvent>) メソッドは、引数 (new EventHandler< TableColumn.CellEditEvent< BillingTableRow,String>>(){}) には適用されません。

私の問題について何か助けていただければ幸いです。

4

1 に答える 1