我有一个从ie7访问的TabLayoutPanel。我第一次查看选项卡时,它被折叠了~32px 32px。如果我选择第二个选项卡,内容区域就会填充,我可以返回到第一个选项卡,它看起来是正确的。我正在使用和所有的祖先的布局面板是某种形式的布局面板。它适用于ie8和chrome。有什么想法吗?
更新:我注意到调整大小对选项卡面板不起作用。只有当我在选项卡之间切换时,面板才会调整大小。更改浏览器窗口大小时,选项卡面板的大小保持不变。第二次更改选项卡时,选项卡面板将正确填充浏览器。
我不知道问题4596是如何修复的(无论如何都不是在2.3.0中),我在ie7下看到了完全相同的效果。
幸运的是,这里有一个变通方法,你可以在你的视图或你正在使用的任何组合中添加。它对我有效,但请注意,我指定了TabLayoutPanel的大小,因为它位于HTMLPanel的中间。
@Override
protected void onAttach() {
super.onAttach();
tabPanel.forceLayout();
}
在将选项卡添加到页面之前,是否偶然将其添加到TabLayoutPanel?
我注意到,如果您将TabLayoutPanel添加到页面中,然后添加选项卡,这个问题就会消失。
Guillaume的解决方案几乎对我有效,只是我必须在下一个事件循环中运行它(不要问我为什么):
Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand()
{
public void execute()
{
tabPanel.forceLayout();
}
});
我也有类似的问题。我明确地调用
tabPanel.selectTab(0);
然后,当我第一次使用选项卡式面板访问UI时,组件会正确显示。