"Beans" 的 JavaBeanBooleanPropertyBuilder 没有 setter

JavaBeanBooleanPropertyBuilder for "Beans" without setters

我发现这个 post 用于将 Java Bean 作为 属性 与现有 JavaFX 属性 绑定。绑定应针对布尔值 属性:

class MyClass {

    private boolean loaded;

    public boolean isLoaded() {

        return loaded;
    }

    // Value changed internally
}

对于真正的 bean,意味着具有 setters 以下的 bean 就像一个魅力。但我遇到的问题是 加载的 属性 没有 setter,只是因为它是内部设置的并且 不应该被修改 用于外部 类.

BooleanProperty loadedProeprty = new JavaBeanBooleanPropertyBuilder()
    .bean(bean)
    .name("loaded")
    .getter("isLoaded")
    .build();

有没有办法为这样的 "beans" 而没有 setter 创建一个 属性?现在我只得到一个 NoSuchMethodException 预期的 setter MyClass.setLoaded(boolean).

改用ReadOnlyJavaBeanBooleanPropertyBuilder

JavaFX 中的普通属性总是 read/write,因此需要 setter。只读变体创建一个只读 属性,因此不需要 setter.