【问题标题】:Freeze Columns in Vaadin 7 table冻结 Vaadin 7 表中的列
【发布时间】:2018-09-04 04:05:34
【问题描述】:

我在 vaadin 7 表中有 20 列,我想冻结 4 列,这样每当我们水平滚动时,我们应该能够始终看到那些冻结的列。

【问题讨论】:

    标签: vaadin vaadin7


    【解决方案1】:

    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(..) 方法将表格设置在顶部只有“冻结”列

    • 相应地设置/设置列宽等。顶部的表格需要比底部的表格窄。

    上述方法有其局限性和性能影响,但在某些情况下可能是一种解决方案。

    【讨论】:

    • 感谢您的回复,但更具体地说,我使用的是 vaadin 7.2.6,它没有 com.vaadin.ui.Grid setFrozenColumnCount API。请建议我如何在 Vaadin 7.2.6 中做到这一点?谢谢。
    • Vaadin 7 Table 中没有这样的内置功能。 7.2.6 版本太旧了,如果可能的话,我建议更新一些新版本。
    • 感谢您的建议,我会尝试将其更新到较新的版本。
    猜你喜欢
    • 2012-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-28
    • 2015-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多