繁体   English   中英

将按钮添加到TableView JavaFX中的列

[英]Adding a Button to a column in TableView JavaFX

因此,我正在尝试使用JavaFX中的表视图将按钮添加到列中。 我已经为一个列成功创建了一个按钮; 使用相同的代码在变量稍有变化的另一列上添加另一个按钮,将导致我无法解决的一个错误。 错误是它不允许我使用超级一词。 下面是我遇到错误的代码;

TableColumn<UserDetails, UserDetails> addColumn = column("Add", ReadOnlyObjectWrapper<UserDetails>::new, 50);

    addColumn.setCellFactory(col -> {
        Button addButton = new Button("Add");
        TableCell<UserDetails, UserDetails> addCell = new TableCell<UserDetails, UserDetails>() {
            public void addItems(UserDetails userDetails, boolean empty) {
                super.addItems(userDetails, empty); //This line is the error (super)
                if (empty) {
                    setGraphic(null);
                } else {
                    setGraphic(addButton);
                }
            }

        };

        addButton.setOnAction(event -> add(addCell.getItem(), primaryStage));
        return addCell;
    });

我究竟做错了什么?

正如你可以在看TableCell的javadoc没有addItems的方法TableCell 您可能想使用updateItem方法

@Override
protected void updateItem(UserDetails userDetails, boolean empty) {
    super.updateItem(userDetails, empty);
    ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM