带有SimplePager的GWT DataGrid,最后一页问题

时间:2016-03-10 18:32:15

标签: gwt datagrid simplepager

我使用GWT DataGrid和SimplePager来显示我的数据,

组件正确显示第一页,但最后一页显示总共10行(10 = SimplePager.pagesize),即使我们要显示的行数少于10行。

AnyOne对这个问题有所了解吗?

感谢名单。

1 个答案:

答案 0 :(得分:0)

之前我遇到过类似的问题。不同之处在于我使用的是Celltable而不是DataGrid。

问题来自已知的gwt错误,您可以在its github page上看到详细信息。显然它已经修复了。

解决方法是将SimplePager子类化并创建自定义分页器类。

import com.google.gwt.user.cellview.client.SimplePager;
import com.google.gwt.view.client.Range;

public class CustomPager extends SimplePager {

public CustomPager() {
    this.setRangeLimited(true);
}

@Override
public void setPageStart(int index) {
    if (this.getDisplay() != null) {
        Range range = this.getDisplay().getVisibleRange();
        int pageSize = range.getLength();
        index = Math.max(0, index);
        if (index != range.getStart()) {
            this.getDisplay().setVisibleRange(index, pageSize);
        }
    }
}

}