我正在尝试创建一个由TextCell和ButtonCell组成的CompositeCell。我想将CompositeCell通常添加到Column,然后再将该列添加到CellTable。但是,我无法弄清楚该列的实例应该如何。特别是在以下代码中找不到其类型参数:

 Column<FilterInfo, ?> compositeColumn = new Column<FilterInfo, ?>(createCompositeCell()) {

  @Override
  public Object getValue(Object object) {
    // TODO Auto-generated method stub
    return null;
  }};

创建自定义类FilterInfo的CompositeCell的方法(是否有必要?)是:
private CompositeCell<FilterInfo> createCompositeCell(){

HasCell<FilterInfo, String> filterName = new HasCell<FilterInfo, String>() {

  public Cell<String> getCell() {
    return new TextCell();
  }

  public FieldUpdater<FilterInfo, String> getFieldUpdater() {
    // TODO Auto-generated method stub
    return null;
  }

  public String getValue(FilterInfo object) {
    return object.getFilterName();
  }};

  HasCell<FilterInfo, String> filterButton = new HasCell<FilterInfo,String>(){

    public Cell<String> getCell() {
      return new ButtonCell();
    }

    public FieldUpdater<FilterInfo, String> getFieldUpdater() {
      // TODO Auto-generated method stub
      return null;
    }

    public String getValue(FilterInfo object) {
      // TODO Auto-generated method stub
      return "...";
    }
  };

  List<HasCell<FilterInfo, ?>> cells = new ArrayList<HasCell<FilterInfo, ?>>();
  cells.add(filterName);
  cells.add(filterButton);

  CompositeCell<FilterInfo> compositeCell = new CompositeCell<FilterInfo>(cells);

  return compositeCell;

}

请将任何适应代码的建议或其他建议创建所需的CompositeCell并将其正确添加到CellTable中,我将不胜感激。

最佳答案

您必须使用复合电池吗?对我来说,这似乎是很多工作,而仅创建自己的自定义单元可能会容易得多。

阅读有关Creating Custom Cells的文档

10-08 03:12