简体   繁体   English

在JavaFX中的可编辑TableView中处理单元格编辑

[英]Handle Cell Editing in a Editable TableView in JavaFX

I was created a Editable TableView, but don't know how to handle the cell data. 我创建了一个Editable TableView,但不知道如何处理单元格数据。 For example, when user edit a cell and enter an empty string, how to alert them and set the field to old value? 例如,当用户编辑一个单元格并输入一个空字符串时,如何提醒它们并将字段设置为旧值? I tried textField.getText().equals(""), but it doesn't work. 我尝试了textField.getText()。equals(“”),但是它不起作用。

private void createTextField() {
        textField = new TextField(getString());
        textField.setMinWidth(this.getWidth() - this.getGraphicTextGap() * 2);
        textField.setOnKeyReleased(new EventHandler<KeyEvent>() {
            @Override
            public void handle(KeyEvent t) {
                if (t.getCode() == KeyCode.ENTER) {
                    if (textField.getText().equals("")) {
                        cancelEdit();
                    }else commitEdit(textField.getText());
                }
            }
        });

By handling it immediately I guess you meant this 通过立即处理它,我想你是说这个

    textField.setOnKeyReleased(new EventHandler<KeyEvent>() {
        @Override
        public void handle(KeyEvent t) {
            if (textField.getText().equals("")) {
                cancelEdit();
            }
            else if (t.getCode() == KeyCode.ENTER) {
                commitEdit(textField.getText());
            }
        }
    });

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

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