恢复TextFieldTableCell值

时间:2013-04-05 03:05:24

标签: javafx-2

我在本页中使用了示例13-10 TableViewSample和启用单元格编辑:

http://docs.oracle.com/javafx/2/ui_controls/table-view.htm

让我们看看这部分:

firstNameCol.setOnEditCommit(
            new EventHandler<CellEditEvent<Person, String>>() {
                @Override
                public void handle(CellEditEvent<Person, String> t) {
                    ((Person) t.getTableView().getItems().get(
                            t.getTablePosition().getRow())
                            ).setFirstName(t.getNewValue());
                }
            }
        );

在handle方法中,我想做一些捕获异常的事情,当发生异常时,必须将单元格文本恢复为旧值。 但是当我打电话时,我无法改变文字

((Person) t.getTableView().getItems().get(
                            t.getTablePosition().getRow())
                            ).setFirstName(t.getOldValue());

只是更改tableView数据的值,而不是显示文本

0 个答案:

没有答案