【发布时间】:2018-09-04 04:05:34
【问题描述】:
我在 vaadin 7 表中有 20 列,我想冻结 4 列,这样每当我们水平滚动时,我们应该能够始终看到那些冻结的列。
【问题讨论】:
我在 vaadin 7 表中有 20 列,我想冻结 4 列,这样每当我们水平滚动时,我们应该能够始终看到那些冻结的列。
【问题讨论】:
Vaadin 7 Table 中没有冻结列功能。但是在较新的 Grid 组件中,您可以使用 Grid.setFrozenColumnCount(..) 方法将 X 最左边的列设置为冻结,请在此处查看更多信息:
https://vaadin.com/api/framework/7.7.14/com/vaadin/ui/Grid.html#setFrozenColumnCount-int-
如果您想用 Vaadin 7 Table 做类似的事情,您可能需要执行以下操作
使用同一个数据源Container的两张表
将它们包裹在里面,例如CSS布局
将 z-index 赋予其他表格,以便在您的主题 CSS 样式中将其置于其他表格之上 (Table.addStyleName("frozen-columns-table"))
使用 setVisibleColumns(..) 方法将表格设置在顶部只有“冻结”列
相应地设置/设置列宽等。顶部的表格需要比底部的表格窄。
上述方法有其局限性和性能影响,但在某些情况下可能是一种解决方案。
【讨论】: