JavaFX 2:需要从TableView中的TableCell内部访问底层对象

时间:2012-10-22 06:03:12

标签: tableview javafx-2 tablecell

我有一个TableView,其基本项是自定义类,即TableAdapter。 我正在为TableCells的自定义单元工厂中创建ContextMenu。在菜单项的EventHandler中,我需要访问由菜单显示的特定单元格表示的基础TableAdapter。如果我调用getItem()或getString(),它们似乎都返回对象的String表示,但是,我需要对象本身来访问其他字段。谢谢,

私有最终类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);


    }

1 个答案:

答案 0 :(得分:0)

尝试定义泛型类型。例如:

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

getItem()在这种情况下应返回布尔值