Vaadin new Table创建了2个独立的表

时间:2015-04-09 14:14:57

标签: gwt vaadin vaadin7

我正在开发一个使用Vaadin的遗留应用程序,该应用程序在内部使用Google Web工具)

我发现标记中的表使用多个表创建,其中一个表可以执行。我设置了一个空白的Vaadin项目并发现了同样的事情:

使用此代码:

//import com.vaadin.ui.Table;
final VerticalLayout layout = new VerticalLayout();

layout.setMargin(true);
setContent(layout);

Table table = new Table("The Brightest Stars");

table.addContainerProperty("Name", String.class, null);
table.addContainerProperty("Mag", Float.class, null);

table.addItem(new Object[] { "Canopus", -0.72f }, 2);
table.addItem(new Object[] { "Arcturus", -0.04f }, 3);
table.addItem(new Object[] { "Alpha Centauri", -0.01f }, 4);

table.setPageLength(table.size());

layout.addComponent(table);

在前端呈现一个表:

enter image description here

然而,当您查看标记时,vaadin为标题创建了一个单独的表格(而不是在表格中使用“'”元素。)

enter image description here

这似乎是一件疯狂的事情。我说这是一个错误,但是从vaadin doc等,这是正确的行为。有没有办法禁用它?

1 个答案:

答案 0 :(得分:3)

这不是一个错误,它是一个功能。

Scroll Table

如果查看此表,可以看到表中有一个滚动,而不是整个网格,使标题固定。这样,单元格标题始终保持在顶部。

这是一个常见的用例,我记得实现了一个自定义小部件,并达成了一个类似的解决方案来实现这个功能。

我从未尝试使用Vaadin,但查找vaadin.ui.Table的来源,列中有一些渲染模式。很抱歉没有帮助。

setColumnHeaders(String[] columnHeaders) Javadoc