Ошибка TableColumn Bindings.createLongBinding (JAVAFX)

Почему этот код дает ошибку. Я пытаюсь отобразить в моей таблице столбца сумму значений num1 и num2.

 tablecolumn1.setCellValueFactory(cellData -> {
        Person num = cellData.getValue();
        return Bindings.createLongBinding(() -> {
            try {
                        Long num1 = num.getnum1());
                        Long num2 = num.getnum2();
                        return num2 - num1 + 1;
            } catch (NumberFormatException e) {
        return 0;
            }
        },
                num.getnum1(), num.getnum2()
        );
    });

это моя личность модель. // Персональная модель

private SimpleLongProperty num1;
private SimpleLongProperty num2;

 public Person( Long num1, Long num2){
       this.num1= new SimpleLongProperty(num1);
       this.num2= new SimpleLongProperty(num2);}

    public Long getNum1() {
        return this.num1.get();
    }

    public void setNum1(Long num1) {
        this.num1.set(num1);
    }

    public Long getNum2() {
        return this.num2.get();
    }

    public void setNum2(Long num2) {
        this.num2.set(num2);
    }

Обновление: РЕШЕНИЕ никогда не думал, что это так просто. но эй, мы учимся на своих ошибках! ^_^

  tablecolumn1.setCellValueFactory(c -> new SimpleStringProperty(
  String.valueOf(c.getValue().getnum1() - c.getValue().getnum2() + 1)));

0 ответов

Другие вопросы по тегам