Gwt GXT添加不';LayoutContainer.removeAll()之后似乎不起作用

Gwt GXT添加不';LayoutContainer.removeAll()之后似乎不起作用,gwt,gxt,Gwt,Gxt,GXT 2.25 我有一个屏幕,屏幕上有一个布局容器,屏幕上有一个两列的TableLayout。左列有一个树形网格。右列是一个布局容器,具有表布局,一列 单击树网格上的各种项目时,我希望在右侧的布局容器中显示与单击的项目匹配的可编辑字段 当我第一次启动表单并从服务器加载数据时,我将文本添加到布局容器中,看起来一切正常 加载文本后,我调用secondLayout.removeAll()删除所有项。然后单击树中的一个项目。选择方法调用secondLayout.removeAll(),然后添加一个新的

GXT 2.25

我有一个屏幕,屏幕上有一个布局容器,屏幕上有一个两列的TableLayout。左列有一个树形网格。右列是一个布局容器,具有表布局,一列

单击树网格上的各种项目时,我希望在右侧的布局容器中显示与单击的项目匹配的可编辑字段

当我第一次启动表单并从服务器加载数据时,我将文本添加到布局容器中,看起来一切正常

加载文本后,我调用secondLayout.removeAll()删除所有项。然后单击树中的一个项目。选择方法调用secondLayout.removeAll(),然后添加一个新的文本项“Loaded…”进行测试

private   LayoutContainer                     secondaryLayout;
然后

secondaryLayout.removeAll();
secondaryLayout.add(new Text("Loaded..."));

想法?

在对容器进行结构更改后,确保调用(在GXT 2中)布局方法来重新运行布局例程。另一种方法是配置
LayoutContainer
在每次修改时重新运行布局(使用
setLayoutOnChange
),但在这种情况下,至少需要两个重新布局—一个用于removeAll,另一个用于添加的每个新对象。可能会造成不必要的代价,所以最好在完成更改后一次性运行


(值得一提的是,GXT 2.2.5刚刚推出两年多,2.2.6、2.3.0从那时起就已经过时了,它正被GXT 3所取代。在GXT 3中,这里的方法是
forceLayout

我忘记了这一点。我们的GUI专家本周休假。他很久以前给我看过一次。谢谢你的帮助。我知道GXT版本的事情,但我为白痴工作,在它被破坏之前,没有人想改变任何东西(