【问题标题】:Is there a CHANGEABLE ListProperty in JavaFX?JavaFX 中是否有 CHANGEABLE ListProperty?
【发布时间】:2014-06-26 12:10:52
【问题描述】:

JavaFX 中是否有 CHANGEABLE ListProperty? 我需要一个ListProperty 支持add()remove() 方法,但我找不到。 SimpleListProperty 将抛出 UnsupportedOperationException

我发现的只是使用初始化程序来设置内容,但这不是我需要的。 我需要从那里开始一个空的 Property end buld。

我不敢相信没有这样的事情;我一定是盲人,不知何故。 请有人指出我正确的方向吗?

【问题讨论】:

    标签: java javafx add listproperty


    【解决方案1】:

    原来ListProperty() 是一个空包装器。
    初始化包装的ObservableList<>
    这从文档中绝对不干净并且抛出的UnsupportedOperationException 具有误导性(应该是NPE)。
    默认构造函数在正常使用中是无用的,使用类似:

    ListProperty<String> xxx = new SimpleListProperty<>(FXCollections.observableArrayList());
    

    注意:使用简单的ObservableList 对我不起作用,因为我使用的是Property 方法(例如:getBean()

    【讨论】:

      【解决方案2】:

      Observable 列表是您正在寻找的列表。它有添加和删除方法。

      import javafx.collections.ObservableList;
      
      ObservableList<String> list = FXCollections.observableArrayList();
      list.add("Jaya");
      list.add("Prasad");
      list.add("test");
      list.remove(list.indexOf("test"));
      

      【讨论】:

      • 关闭,但不完全是我需要的;见下文。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多