gwt网格滚动同步

时间:2015-12-07 01:27:49

标签: java extjs gwt gxt

我正在使用gwt; 我的页面中有两个网格。它们具有与diff内容相同的行数。

我想要的是,当我滚动grid1时,grid2会自动滚动到同一个地方。

有人可以帮忙吗?

我试过这样,但是这个事件并没有解雇

grid1.addBodyScrollHandler(new BodyScrollHandler()
    {
        @Override
        public void onBodyScroll(BodyScrollEvent event)
        {
            Info.display("test", event.getScrollTop() + "");
            //if this event fires,how to scroll grid2
        }
    });

2 个答案:

答案 0 :(得分:0)

您可以按照以下方式进行操作:

  • 将两个GridListener添加到UI上所需的每个GRIDS
  • 为第一个网格的onScroll事件实现处理程序,并添加滚动第二个网格的功能

您提出的问题的类似实现已经通过GWT-EXT实现,希望这个link为您提供基本的想法,尽管那里给出的代码可能对您没有帮助!

答案 1 :(得分:0)

https://stackoverflow.com/a/15048539/860630开始,更深入地探讨了这个一般问题的其他部分:

  grid1.addBodyScrollHandler(new BodyScrollHandler() {
    @Override
    public void onBodyScroll(BodyScrollEvent event) {
      grid2.getView().getScroller().scrollTo(ScrollDirection.TOP, event.getScrollTop());
    }
  });
  grid2.addBodyScrollHandler(new BodyScrollHandler() {
    @Override
    public void onBodyScroll(BodyScrollEvent event) {
      grid1.getView().getScroller().scrollTo(ScrollDirection.TOP, event.getScrollTop());
    }
  });