GWT SimplePager如何刷新

问题描述 投票:1回答:1

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

所以目前我在初始化网站时正在调用:

pager.setDisplay(customList);

在列表增长时无所事事。所以我认为当项目添加到列表时我可以使用相同的方法。

例如:

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

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

知道如何强制更新寻呼机本身?

java gwt
1个回答
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

© www.soinside.com 2019 - 2024. All rights reserved.