【问题标题】:Encapsulate JavaFX properties in NetBeans 8?在 NetBeans 8 中封装 JavaFX 属性?
【发布时间】:2014-09-13 09:34:48
【问题描述】:

这是我在 StackOverflow 上的第一个问题,所以我希望这不是一个愚蠢的问题 :-)

有没有办法在 NetBeans 8 中自动封装 JavaFX 属性?

假设我们要封装这个字段:

private SimpleIntegerProperty id;

当我进入 Refactor > Encapsulate Fields 时,我得到这些行:

public SimpleIntegerProperty getId() {
    return this.id;
}

public setId(SimpleIntegerProperty id) {
    this.id = id;
}

但我想得到那个:

public Integer getId() {
    return id.get();
}

public void setId(Integer id) {
    this.id.set(id);
}

public SimpleIntegerProperty idProperty() {
    return id;
}

有简单的方法吗? 谢谢。

【问题讨论】:

    标签: java netbeans properties javafx encapsulation


    【解决方案1】:

    无需重构,您只需转到 Source->Insert Code 并选择 Add JavaFX Property。 然后,在对话框中,为您的属性命名,即id,如有必要,请提供默认值,选择属性类型,即IntegerProperty,然后单击确定。

    那么这就是你得到的:

    private final IntegerProperty id = new SimpleIntegerProperty();
    
    public int getId() {
        return id.get();
    }
    
    public void setId(int value) {
        id.set(value);
    }
    
    public IntegerProperty idProperty() {
        return id;
    }
    

    最后,如果需要,您可以手动将简单类型int 更改为Integer

    【讨论】:

    • 我怎么在上下文菜单中没有“添加JavaFX属性”选项?
    猜你喜欢
    • 2011-02-23
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    • 2021-11-17
    • 1970-01-01
    • 2016-12-03
    • 2014-07-26
    • 2013-01-06
    相关资源
    最近更新 更多