使用 SimplePager 进行 CellTable 分页

发布于 2024-12-02 10:45:55 字数 749 浏览 10 评论 0原文

参考此错误:http://groups.google.com/group/google-web-toolkit/browse_thread/thread/45e77082b796281d/d5101729e83a74ff?lnk=gst&q=pager%20last%20page#d5101729e83a74ff

嗯,我想要这样的行为:

tablePager = new SimplePager() {
            @Override
            public boolean hasNextPage() {
                if( this.getPage() < this.getPageCount() ) {
                    return true;
                } 
                else {
                    return false;
                }
            } 
        };

但是,它确实不起作用:仅在加载时调用。 你怎么认为?

Referring to this bug: http://groups.google.com/group/google-web-toolkit/browse_thread/thread/45e77082b796281d/d5101729e83a74ff?lnk=gst&q=pager%20last%20page#d5101729e83a74ff

Well, I want a behavior like that:

tablePager = new SimplePager() {
            @Override
            public boolean hasNextPage() {
                if( this.getPage() < this.getPageCount() ) {
                    return true;
                } 
                else {
                    return false;
                }
            } 
        };

However, it does not work: it's called only at loading.
What do you think?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我为君王 2024-12-09 10:45:55
pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0,
                true) {
            private int pageSize = 10;

            @Override
            public int getPageSize() {
                return pageSize;
            }

            @Override
            public void previousPage() {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    setPageStart(range.getStart() - getPageSize());
                }
            }

            @Override
            public void setPageStart(int index) {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    int displayPageSize = getPageSize();
                    if (isRangeLimited() && getDisplay().isRowCountExact()) {
                        displayPageSize = Math.min(getPageSize(), getDisplay()
                                .getRowCount() - index);
                    }
                    index = Math.max(0, index);
                    if (index != range.getStart()) {
                        getDisplay().setVisibleRange(index, displayPageSize);
                    }
                }
            }

            @Override
            public void nextPage() {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    setPageStart(range.getStart() + getPageSize());
                }
            }
        };

        pager.setRangeLimited(true);
        pager.setDisplay(cellTable);
        pager.setPageSize(10);
pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0,
                true) {
            private int pageSize = 10;

            @Override
            public int getPageSize() {
                return pageSize;
            }

            @Override
            public void previousPage() {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    setPageStart(range.getStart() - getPageSize());
                }
            }

            @Override
            public void setPageStart(int index) {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    int displayPageSize = getPageSize();
                    if (isRangeLimited() && getDisplay().isRowCountExact()) {
                        displayPageSize = Math.min(getPageSize(), getDisplay()
                                .getRowCount() - index);
                    }
                    index = Math.max(0, index);
                    if (index != range.getStart()) {
                        getDisplay().setVisibleRange(index, displayPageSize);
                    }
                }
            }

            @Override
            public void nextPage() {
                if (getDisplay() != null) {
                    Range range = getDisplay().getVisibleRange();
                    setPageStart(range.getStart() + getPageSize());
                }
            }
        };

        pager.setRangeLimited(true);
        pager.setDisplay(cellTable);
        pager.setPageSize(10);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文