Vaadin new Table 创建 2 个单独的表
Vaadin new Table creates 2 separate tables
我正在开发一个使用 Vaadin 的遗留应用程序,它在内部使用 Google 网络工具)
我发现标记中的 table 是使用多个 table 创建的,而一个 table 就可以。我建立了一个空白的 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);
一个table在前端渲染:
然而,当您查看标记时,vaadin 已经为标题创建了一个单独的 table(而不是在 table 中使用 'th' 元素)
这似乎是一件疯狂的事情。我会说这是一个错误,但从 vaadin 文档等来看,这是正确的行为。有什么方法可以禁用它吗??
这不是错误,这是一个功能。
如果你看一下这个 table,你会看到 table 中有一个滚动条,而不是整个网格,这使得 headers 是固定的。这样,单元格 header 始终保持在顶部。
这是一个常见的用例,我记得实现了自定义小部件并达成了类似的解决方案来实现此功能。
我从未尝试过使用 Vaadin,但查找 vaadin.ui.Table
的源代码可以找到该列的一些渲染模式。很抱歉没有提供那么多帮助。
setColumnHeaders(String[] columnHeaders)
Javadoc
我正在开发一个使用 Vaadin 的遗留应用程序,它在内部使用 Google 网络工具)
我发现标记中的 table 是使用多个 table 创建的,而一个 table 就可以。我建立了一个空白的 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);
一个table在前端渲染:
然而,当您查看标记时,vaadin 已经为标题创建了一个单独的 table(而不是在 table 中使用 'th' 元素)
这似乎是一件疯狂的事情。我会说这是一个错误,但从 vaadin 文档等来看,这是正确的行为。有什么方法可以禁用它吗??
这不是错误,这是一个功能。
如果你看一下这个 table,你会看到 table 中有一个滚动条,而不是整个网格,这使得 headers 是固定的。这样,单元格 header 始终保持在顶部。
这是一个常见的用例,我记得实现了自定义小部件并达成了类似的解决方案来实现此功能。
我从未尝试过使用 Vaadin,但查找 vaadin.ui.Table
的源代码可以找到该列的一些渲染模式。很抱歉没有提供那么多帮助。
setColumnHeaders(String[] columnHeaders)
Javadoc