JavaFX的。可观察的二维只读可观察自定义类

时间:2016-10-30 19:57:22

标签: javafx observable

我的目标是模型,它将提供名为令牌二维只读可观察自定义类集合。想象一下它是一排代币。

  1. 行:[Token1,Token2,Token3,...]
  2. 行:[Token11,Token12,...]
  3. ...
  4. 我想知道如何正确处理这些事件:

    • 添加/删除整行
    • 在特定行上添加/删除特定标记 - 我需要知道索引 关注行

    我可以使用哪种数据结构将返回的可观察集合设为只读? unmodifiableObservableList

    代码草案:

    public class Model {
       private ObservableList<ObservableList<Token>> tokens;
    
       public Model {
          // Some init data
          tokens = FXCollections.observableArrayList();
          for (int i = 0; i < 3; ++i) {
             final ObservableList<Token> row = FXCollections.observableArrayList();
             tokens.add(i, row);
             for (int j = 0; j < 10; ++j) {
                row.add(new Token(i * 100 + j));
             }
          }
       }
    
       public ObservableList<ObservableList<Token>> getTokens() {
          return tokens;
       }
    }
    
    public class Processor {
       private Model model;
    
       public Processor() {
          model = new Model();
    
          model.getTokens().addListener(…) {…}
       }
    }
    

0 个答案:

没有答案