首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CellTable上的复合单元格宽度

CellTable上的复合单元格宽度
EN

Stack Overflow用户
提问于 2013-06-25 04:18:30
回答 1查看 697关注 0票数 1

我有一个复合单元格,它工作得很好,它有一个文本输入单元格和一个按钮单元格。然而,当它显示时,它将按钮单元格放在文本输入单元格下,如图所示:

下面是我使用hascells实现的compositecel:

代码语言:javascript
复制
final HasCell<ObjetoDato,String> celda1=new HasCell<ObjetoDato,String>(){
    TextInputCell celda;

    @Override
    public Cell<String> getCell() {
        celda=new TextInputCell();
        
        return celda;
    }

    @Override
    public FieldUpdater<ObjetoDato, String> getFieldUpdater() {
        return null;
    }

    @Override
    public String getValue(ObjetoDato object) {
        //new Scripter(object,actual.getComportamiento(),true);
        return object.getValor(actual.getNombreCampo());    
    }

    
    
};                        
HasCell<ObjetoDato,String> celda2=new HasCell<ObjetoDato,String>(){
    ButtonCell celda;

    @Override
    public Cell<String> getCell() {
        celda=new ButtonCell();
        
        return celda;
    }

    @Override
    public FieldUpdater<ObjetoDato, String> getFieldUpdater() {
        return new FieldUpdater<ObjetoDato, String> (){
            
            @Override
            public void update(int index,ObjetoDato object, String value) {
                new Seleccionador(actual.getClaseRelacion(), actual.getNombreCampo(),object.getValor(actual.getNombreCampo()), object.getIdRelacion(actual.getNombreCampo()), object,tabla,object,actual.getComportamiento());
            
            }
        };
    }

    @Override
    public String getValue(ObjetoDato object) {
        
        return "...";
    }
    
    
};
//Composite
List<HasCell<ObjetoDato,?>> celdas = new LinkedList<HasCell<ObjetoDato,?>>();
celdas.add(celda1);
celdas.add(celda2);
CompositeCell<ObjetoDato> cell = new CompositeCell<ObjetoDato>(celdas);

Column<ObjetoDato,ObjetoDato> columna = new Column<ObjetoDato,ObjetoDato>(cell) {
        @Override
                public ObjetoDato getValue(ObjetoDato object) {
                    return object;
                }
};

//columna.setCellStyleNames("columna3puntos");
tabla.agregarColumna(columna,actual.getCaption());
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-25 19:45:27

您可能想看看您的render()方法是如何实现的。此外,如果您的内部单元使用块元素,如<div>。它将垂直显示。因此,您可以将其更改为<span>。或者您可以将style="float:left;“添加到div的CSS中。我有一些和你的相似的东西。但我的是一个2行表格的自定义单元格,其中有1列,如下所示:

代码语言:javascript
复制
+----+
|    |
+----+
|    |
+----+

我使用了一个CellList来保存许多这样的自定义单元格。CellList的问题在于它是垂直显示的。所以我必须重写CellList才能让它水平显示。我修改了CellList的模板,使其具有float:left,我的单元格开始水平呈现,如下所示:

代码语言:javascript
复制
+----+     +----+   +----+
|    |     |    |   |    |
+----+     +----+   +----+
|    |     |    |   |    |
+----+     +----+   +----+
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17284334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档