代码之家  ›  专栏  ›  技术社区  ›  kscherrer

Vaadin 8.2.0网格-如何从多重选择复选框中删除标签

  •  3
  • kscherrer  · 技术社区  · 6 年前

    更新#2: 事实证明,我们的项目设置不是最优的,这就是为什么我必须手动将更新后的带有主题的VAADIN文件夹复制到另一个位置。 问题不是由vaadin引起的,而是我们的项目设置引起的。
    感谢SteffenHarbich和Vaadin开发人员,他们帮助我在这里和 issue ticket .


    我使用的是Vaadin Framework 8.2.0,我有一个带有SelectionMode的网格。多种

    由于multiselection模式,将显示一个附加列,其中包含用于选择行的复选框, 这很好!
    但是: 这些复选框还有一个带有文本的标签 Selects row number XX . 这个标签让我非常困扰,我找不到办法删除它们。

    enter image description here

    Demo 瓦丁没有这样的标签,所以我相信这是可以实现的。

    在这里,用CSS隐藏标签对我没有帮助,因为列宽保持不变,就像有标签一样。

    以下是我的简化代码:

    Grid<MyItem> myGrid = new Grid<MyItem>(MyItem.class);
    
    myGrid.setSelectionMode(Grid.SelectionMode.MULTI);
    
    myGrid.getEditor().setEnabled(true);
    myGrid.setColumnReorderingAllowed(true);
    
    //all columns match membervariables of MyItem. I use setColumns in order to control which fields are shown (not all of them are)
    myGrid.setColumns(GRID_COLUMNS);  
    
    myGrid.getColumn("foo").setHidable(false).setCaption("bar");
    // configure each column similarly
    
    myGrid.getColumn("foo").setEditorComponent(new TextField());
    // some more setters of editorComponents and editorBindings
    
    // finally, set items.
    // binder contains a bean that has many MyItems. binder is of type com.vaadin.data.Binder;
    myGrid.setItems(binder.getBean().getMyItems());
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   Steffen Harbich    6 年前

    请参见 corresponding ticket 在github上。问题是旧主题CSS。

        2
  •  1
  •   Thomas Oltzen    6 年前

    使用添加主题

    .v-assistive-device-only-label  label {
        font-size:0;
        width: 0px; 
    }