У меня есть компонент Table внутри некоторых макетов, и я не хочу, чтобы он отображал полосы прокрутки.
В таблице всегда будут отображаться только 25 строк, а ширина должна всегда составлять 720 пикселей.Тем не менее, таблица продолжает показывать вертикальные и горизонтальные полосы прокрутки, и я не могу понять, как.Самое смешное (хотя я довольно плачу сейчас), что иногда полосы прокрутки исчезают.Когда я продолжаю обновлять страницу, иногда они исчезают, и все в порядке.
Вот пара информации, которую я собрал после нескольких часов отладки:
- Иногда значки / изображения / и т. Д.не загружаются и отображаются из кассы, иногда они есть.И угадайте что, это также включает и выключает полосы прокрутки, хотя изображения по-прежнему отображаются.
- Ширина каждого столбца иногда на пару пикселей больше - и поэтому горизонтальная полоса прокрутки появляется, и я думаю, что этоВот почему вертикальная полоса прокрутки отображается (потому что горизонталь занимает несколько пикселей от высоты таблицы)
- Я попытался вызвать requestRepaint после заполнения таблицы, даже requestRepaintAll для родительского компонента и его родителя,и его родитель, и т.д ...
- Я попытался установить ширину каждого столбца в процентах.100000.) Я думаю, что пробовал все остальное между 4 и 100000.
Я, должно быть, что-то упустил.У многих людей есть эта проблема, и я нашел много потоков непосредственно на странице vaadin, но ЭТОГО ОПРЕДЕЛЕННОГО РАБОТЫ не существует.
РЕДАКТИРОВАТЬ КОД:
Table t = new Table();
t.setWidth("720px");
t.setImmediate(true);
t.setSelectable(true);
// Headers
t.addContainerProperty("fullName", String.class, null, "Meno", null, null);
t.setColumnExpandRatio("fullName", 22);
t.addContainerProperty("dateOfBirth", Date.class, null, "Narodenie", null, null);
t.setColumnExpandRatio("dateOfBirth", 18);
t.addContainerProperty("lastYearCosts", BigDecimal.class, null, "Náklady", null, null);
t.setColumnExpandRatio("lastYearCosts", 10);
t.addContainerProperty("lastYearBalance", BigDecimal.class, null, "Saldo", null, null);
t.setColumnExpandRatio("lastYearBalance", 10);
t.addContainerProperty("activeClient", ComparableBooleanEmbeddedIcon.class, null, "", new ThemeResource("icons/icon-app-header-medipartner.png"), Table.ALIGN_CENTER);
t.setColumnExpandRatio("lastYearBalance", 8);
t.addContainerProperty("dmsCount", String.class, null, "", new ThemeResource("icons/icon-app-header-heart.png"), null);
t.setColumnExpandRatio("dmsCount", 8);
t.addContainerProperty("authCount", String.class, null, "", new ThemeResource("icons/icon-app-header-warnings.png"), null);
t.setColumnExpandRatio("authCount", 8);
t.addContainerProperty("book", CssLayout.class, null, "Objednať", null, Table.ALIGN_CENTER);
t.setColumnExpandRatio("book", 16);
Затем я просто заполняю строки с помощью addItem (Object [] item).