我有这段代码,它设置了一个“主”容器,应用程序的其他模块将进入该容器。
LayoutContainer c = new LayoutContainer();
c.setScrollMode(Scroll.ALWAYS);
parentContainer.add(c, <...>);
然后稍后,我将以下内容作为事件处理程序
pContainer = c; // pContainer is actually a parameter, but it has c's value
pContainer.removeAll();
pContainer.setLayout(new FitLayout());
LayoutContainer wrapperContainer = new LayoutContainer();
wrapperContainer.setLayout(new BorderLayout());
wrapperContainer.setBorders(false);
pContainer.add(wrapperContainer);
LayoutContainer west = pWestContentContainer;
BorderLayoutData westLayoutData = new BorderLayoutData(LayoutRegion.WEST);
westLayoutData.setSize(pWidth);
westLayoutData.setSplit(true);
wrapperContainer.add(west, westLayoutData);
LayoutContainer center = new LayoutContainer();
wrapperContainer.add(center, new BorderLayoutData(LayoutRegion.CENTER));
pCallback.withSplitContainer(center);
pContainer.layout();
因此,实际上,此处称为“west”的容器将显示模块的 UI。然后,该模块 UI 使用两个孩子进行简单的行布局。底部的孩子有 RowData(1, 1) 所以它填满了所有可用空间。
我的问题是 c (父)容器报告了一个高度和宽度值,其中包括滚动条下方的值。我想要的是滚动条显示所有空间,不包括它们自己的空间。
这是显示我的意思的屏幕截图: alt text http://img265.imageshack.us/img265/9206/scrollbar.png