Vaadin版本:8.1.4
我的问题是,在调整屏幕大小后,网格没有正确调整大小。我使用setSizeFull()作为网格。但是,在调整浏览器网格大小后,保留其原始大小。
下一个代码示例似乎可以解决问题,但我想知道是否有更好的方法。
UI.getCurrent().getPage().addBrowserWindowResizeListener(e -> {
grid.recalculateColumnWidths();
});
P.S。我忘了提到,当前解决方案的问题是,如果字段的文本很长,vaadin会尝试调整网格,以便所有文本都适合,这会导致网格的宽度超过100%。
示例:
Grid<MyObject> = new Grid();
grid.addColumn(MyObject::getDescription).setCaption("Caption").setSortable(false);
网格单元格的Css样式:
.v-grid-cell {
white-space: nowrap;
overflow: hidden;
}
无需重新计算列宽,无论MyObject描述的大小如何,网格都能很好地适应页面,但重新计算后(如果MyObject描述不适合浏览器窗口),网格比窗口宽