2013-03-19 85 views
1

GXT ScrollBar重叠内容

我正在使用setScrollMode(ScrollMode.AUTOY)在VerticalLayoutContainer上启用垂直滚动。但是,滚动条与容器的内容重叠。解决这个问题的唯一方法就是致电setAdjustForScroll(true)。这样做的问题在于,面板将始终为为滚动条保留空间,即使不存在。

有一种方法可以告诉GXT只在出现滚动条时才进行调整吗?或者也许使用事件处理程序(例如ResizeHandler)并检查滚动条当前是否可见?

+0

只是好奇,什么版本? 2.X? 3.X? – user1258245 2013-03-19 08:25:20

+0

GXT版本3.0.1 – Luke 2013-03-19 22:23:42

回答

0

而不是试图检查处理程序,如果滚动条是可见的,是不是更容易没有在VerticalLayoutContainer内容?

例如,我有:

VerticalLayoutContainer vp = new VerticalLayoutContainer(); 

vp.setScrollMode(ScrollMode.AUTO); 

vp.add(layer1, new VerticalLayoutData(1, -1)); 
vp.add(layer2, new VerticalLayoutData(1, -1)); 
vp.add(layer3, new VerticalLayoutData(1, -1)); 

层(1-3)包含实际内容和不同类型的实施例。 VBoxLayoutContainer,Container,VerticalLayoutContainer。

它适用于我。我不认为它是相关的,但我将vp添加到添加到根面板的CenterLayoutContainer中。

+0

谢谢,但看起来像我正在做的,这是导致'层[1-3]'调整正确的vp,但没有考虑到滚动条的宽度。这导致图层[1-3]的最后10-15个像素位于滚动条下方。 – Luke 2013-03-20 03:15:37

+0

嗯。看起来你是对的。但是,似乎需要一个'forceLayout()'调用才能将其付诸实践。 – Luke 2013-11-11 22:59:58