更新#2:事实证明我们的项目设置不是最佳的,这就是为什么我必须手动将带有主题的更新的VAADIN文件夹复制到另一个位置。 问题不是由vaadin引起的,而是我们的项目设置。
谢谢@SteffenHarbich和Vaadin-Devs帮我找到问题的根源和issue ticket。
我使用的是Vaadin Framework 8.2.0,我有一个带SelectionMode.MULTI的网格
由于多选模式,会出现一个附加列,其中包含用于选择行的复选框,,这很好!
但是:这些复选框还有一个带有文字Selects row number XX
的标签。这个标签非常困扰我,我找不到删除它们的方法。
在Vaadin的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());
答案 0 :(得分:2)
请参阅github上的corresponding ticket。问题是旧主题CSS。
答案 1 :(得分:1)
使用
添加主题.v-assistive-device-only-label label {
font-size:0;
width: 0px;
}