繁体   English   中英

如何在GWT中让ScrollPanel(包含许多小部件)滚动到其中的特定小部件?

[英]How to let the ScrollPanel (containing many widgets) to scroll to a specific widget in it, in GWT?

好的,我有一个可容纳1个HTMLPanel的滚动面板,其中包含许多FlowPanel。 例如:

 <ScrollPanel>
   <HTMLPanel>
     <FlowPanel1> 
     <FlowPanel2>
     <FlowPanel3> ......
   </HTMLPanel>
 </ScrollPanel>

每个FlowPanel可能很大,有时用户一次只能在ScrollPanel内部看到1个FlowPanel。 因此,如果他们想查看其他FlowPanel,则必须向下滚动并仔细查看以找到该FlowPanel。 不是很好。

所以我想构建许多按钮,例如(gotoFlowPanel_1_But,gotoFlowPanel_2_But,gotoFlowPanel_3_But,...)。 我希望当用户单击该按钮时,它将使正确的FlowPanel对用户可见,这意味着如果FlowPanel进一步隐藏在ScrollPanel的底部,则ScrollPanel将自动向下滚动到该FlowPanel的位置并显示它给用户。

这是单击gotoFlowPanel_1_But时的代码

myScrollPanel.setPosition(flowPanel1.getAbsoluteTop());

当我第一次单击gotoFlowPanel_1_But按钮时,它跳至正确的FlowPanel1。 但是,当我再次单击该按钮时,位置发生了变化,滚动条向下滚动了很多。 但是,如果我再次单击该按钮,则显示正确,但是再单击1次,则显示错误位置。

那么如何解决呢?

您是否在ScrollPanel类中检查了sureVisible(UIObject item)方法? 有关更多信息,请参见GWT文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM