tableview中的自定义textfieldtablecell

6bc51xsx  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(277)

我想创建自定义textfieldtablecell,即重复行为单元格textfieldtablecell,但允许替换子元素textfield的上下文菜单。我写了手机工厂:

tableColumn.setCellFactory(new Callback<TableColumn<TableData, Double>, TableCell<TableData, Double>>() {
            @Override
            public TableCell<TableData, Double> call(TableColumn<TableData, Double> param) {
                var tc = new TextFieldTableCell<TableData, Double>(new CustomDoubleStringConverter());
                var contextMenu = new ContextMenu();
                var itemsMenu = TextFieldContextMenuCreator.createDefaultMenuItemsTextField((TextField)tc.getGraphic(), resources);
                contextMenu.getItems().addAll(itemsMenu);
                ((TextField)tc.getGraphic()).setContextMenu(contextMenu);

                return tc;
            }
        });

但是,方法 getGraphics() 始终返回 null . 这个怎么样?

mzillmmw

mzillmmw1#

根据kleopatra的建议,我在javafx源代码的帮助下创建了自定义textfield单元类。它在我使用内部textfield,在他的创建过程中,我为他创建了必要的上下文菜单。

相关问题