【问题标题】:GWT DataGrid does not display data when initialized while invisibleGWT DataGrid 在不可见的情况下初始化时不显示数据
【发布时间】:2013-10-04 08:31:43
【问题描述】:

我在一个可折叠的简单布局面板中有一个 DataGrid。默认情况下它是折叠的,当我在页面加载后展开它时,列标题可见但数据行不可见。如果我将面板设置为默认展开,则表中的所有数据都是可见的,并且在再次折叠/展开后仍然如此。

任何想法可能导致这种情况?我一直都有布局面板。我尝试使面板一开始就可见,然后在设置数据提供程序后在延迟命令中将其设置为不可见。但是,在 deferred 命令运行时,该表报告有两个数据行,但它们尚未显示。在数据行变得可见之前,面板被设置为不可见,因此它们从不变得可见。

我希望我的描述是有道理的。感谢您提供的任何建议!

【问题讨论】:

  • 您使用的是DataGrid。如果是,则必须将其放入实现ProvidesResize 接口的LayoutPanelPanel。或者,如果您使用“普通”Panel,则必须明确指定该面板的尺寸。
  • 谢谢,user905374!这就是问题所在。展开表格时,我不得不重新绘制表格。
  • 您如何重绘表格?你能发布答案吗?

标签: java html gwt datagrid


【解决方案1】:

在使网格可见后调用dataGrid.onResize() 对我来说是诀窍。

请记住,onResize() 可能需要从延迟命令中调用,如下所示:

Scheduler.get().scheduleDeferred(new ScheduledCommand() {
    @Override
    public void execute() {
        view.titleGrid.onResize();
    }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 1970-01-01
    • 2022-12-07
    • 2017-07-17
    相关资源
    最近更新 更多