Gwt SplitLayoutPanel中的子级高度

Gwt SplitLayoutPanel中的子级高度,gwt,layout,gwt2,Gwt,Layout,Gwt2,我有一个拆分面板。在北牢房,我有一个滚动面板 上面有一棵树。 我希望这个滚动面板的高度和north cell一样,所以 当树展开时,会出现一个滚动条。此滚动面板的大小 调整北单元格大小时必须更改。 我尝试过RequireResizes,但家长不发送大小 信息理想的方法应该是为Requiresize小部件子级提供可用大小的size小部件调用onResize方法 我很困惑。如何将SplitLayoutPanel配置为具有单元格 孩子们调整了尺寸 感谢创建一个扩展复合的类并实现RequiresResi

我有一个拆分面板。在北牢房,我有一个滚动面板 上面有一棵树。 我希望这个滚动面板的高度和north cell一样,所以 当树展开时,会出现一个滚动条。此滚动面板的大小 调整北单元格大小时必须更改。 我尝试过RequireResizes,但家长不发送大小 信息理想的方法应该是为Requiresize小部件子级提供可用大小的size小部件调用onResize方法

我很困惑。如何将SplitLayoutPanel配置为具有单元格 孩子们调整了尺寸


感谢

创建一个扩展复合的类并实现RequiresResize;像这样:

public class MyScrollPanel extends Composite implements RequiresResize {
 private ScrollPanel scrollPanel;

 public MyScrollPanel() {
  scrollPanel = new ScrollPanel();
  initWidget(scrollPanel);
 }

 public void onResize() {
  // do something to your scrollpanel
 }

}
然后将MyScrollPanel添加到SplitLayoutPanel中的北单元格

编辑
但是。默认情况下,ScrollPanel已经具有所需的行为。添加到SplitLayoutPanel单元格的ScrollPanel将自动填充单元格大小,即使调整大小也是如此。任何大于可用空间的ScrollPanel子部件都会导致出现滚动条。

但请确保通过执行以下操作将SplitLayoutPanel添加到RootLayoutPanel
RootLayoutPanel.get().add(splitLayoutPanel)

Composite
+
RequiresResize
=
ResizeComposite
。而
mycrollpanel
SplitLayouPanel
之间的所有面板都必须是布局面板,否则在
mycrollpanel
面板中不会调用resize。根据文档,ResizeComposite会自动将onResize委托给包装好的小部件,该小部件本身必须实现requireresize,所以这在滚动面板上不起作用。至于另一个注意事项,位于SplitLayoutPanel和MyScrollPanel之间的所有小部件都不能是布局面板,而必须实现ProvidesResize,否则将不会调用MyScrollPanel.onResize()。感谢您的回答,但这正是我所做的,但我不知道onResize方法应该使用什么。如何将滚动面板的高度设置为北单元格的高度?在子窗口小部件中检查父窗口小部件确实很棘手,因为您不能在另一个父窗口小部件中重用您的子窗口小部件……我刚刚在SplitLayoutPanel的北单元格中添加了一个ScrollPanel,它完全填充了北单元格。并在调整单元格大小时继续执行此操作。任何大于可用空间的内容都会导致出现滚动条。因此,默认情况下,您正在寻找的功能已经存在。确保您使用的是RootLayoutPanel.get().add(新的TheSplitLayoutPanel()),并且ScrollPanel是north cell中唯一的子项。oops,您是对的。。。因为我有一个中间面板。。。非常感谢。我真的很累!