0

基本アイテムがカスタムクラス、つまりTableAdapterであるTableViewがあります。TableCellsのカスタムセルファクトリでContextMenuを作成しています。メニュー項目のEventHandlerで、メニューが表示されている特定のセルによって表される基になるTableAdapterにアクセスする必要があります。getItem()またはgetString()を呼び出すと、どちらもオブジェクトの文字列表現を返すように見えますが、他のフィールドにアクセスするにはオブジェクト自体が必要です。ありがとう、

プライベートファイナルクラスcCustomTableCellはTableCellを拡張します{

    private ContextMenu menu = new ContextMenu();

    public cCustomTableCell(){
        MenuItem menuItem = new MenuItem("Show in tree");
        menu.getItems().add(menuItem);

        menuItem.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent actionEvent) {

// これは私が下にあるオブジェクトにアクセスする必要がある場所です

            }
        });
        setContextMenu(menu);


    }
4

1 に答える 1

0

Try to define the generic type. for example:

public class CheckBoxTableCell<S> extends TableCell<S, Boolean> {}

The getItem() should return Boolean in that case

于 2012-10-22T06:46:58.417 に答える