GWT SimplePager如何刷新

时间:2019-02-22 16:46:30

标签: java gwt

我想向您提出一些有关GWT的SimplePager对象的问题。 因此,我得到了一些特殊的项目清单,这些清单实现了HasRows接口,可以使用分页。 但是问题在于列表可以在不集成用户的情况下增加大小。然后将元素添加到列表中,SimplePager的大小也应增加。但是我想避免刷新整个页面并仅更新解析器。

因此,当我初始化网站时,我正在呼叫:

pager.setDisplay(customList);

当列表增长时什么也不做。所以我认为我可以使用 将项目添加到列表时的方法相同。

例如:

public void onItemAdded(Person person){
    customList.add(person);
    pager.setDisplay(customList);
}

但是它不是重新绘制窗口小部件,只有在用户刷新站点之后,它才会再次初始化窗口小部件并在列表中获得适当数量的项目。

有什么主意我该如何强制对寻呼机本身进行更新?

1 个答案:

答案 0 :(得分:0)

您应该在列表和寻呼机之间使用ListDataProvider<Person>

ListDataProvider<Person> dataProvider = new ListDataProvider<Person>();
dataProvider.setDataDisplay(customList);
pager.setDisplay(customList);

,然后您添加项目的功能将是:

public void onItemAdded(Person person){
    dataProvider.getList().add(person);
}

通过设置dataDisplay,基础列表上的每个操作都将在此显示器上更新。参见http://www.gwtproject.org/javadoc/latest/com/google/gwt/view/client/ListDataProvider.html