GWT SimplePager:如何在寻呼机中提供GoTo功能?

时间:2011-12-12 07:06:16

标签: java gwt pager gwt-2.2-celltable

我使用GWT2.3。 我们通过覆盖SimplePager开发了CustomPager。

我们覆盖createText()方法,以便我们使用以下代码显示类似“第1页,共4页”的字符串

    public String createText() {
        if(searchRecordCount%pageSizeForText == 0){
            totalPages = searchRecordCount/pageSizeForText;
        }else{
            totalPages = (searchRecordCount/pageSizeForText) + 1;
        }
        NumberFormat formatter = NumberFormat.getFormat("#,###");
        return "Page "+formatter.format(this.getPage()+1) + " of " + formatter.format(totalPages);
      }

enter image description here

现在我想使用TextBox for CurrentPage,以便用户可以在textBox中输入页码。 (功能GoTo输入pageNumber)

createText()返回字符串,所以我不能用户textBox;)+无法提供css

我该怎么做?有什么方法可以解决这个问题吗?解决方法(如果有)或示例代码

1 个答案:

答案 0 :(得分:3)

有两种方法可以达到这个目的:

1。)使用HTML代码创建TextBox

createText()功能中,您可以使用HTML代码手动创建文本框(最好使用SafeHTML templates来避免XSS):

String textbox_str = "<input type='textbox' name='goto'>";

但是,您必须编写用于处理实际事件的代码(即ChangeEvent)并使用JSNI调用SimplePager的setPage()

2。)将TextBox小部件添加到SimplePager并覆盖构造函数

SimplePager基本上是一个Composite,它在其构造函数中为前向和后向链接添加了ImageButtons。
您可以扩展SimplePager添加TextBox并覆盖构造函数,以在前向和后向ImageButtons之间添加TextBox。