gpt4 book ai didi

GWT 如何使用 ListHandler 和 ListDataProvider 对 CellTable 进行排序

转载 作者:行者123 更新时间:2023-12-01 00:30:26 25 4
gpt4 key购买 nike

我有以下代码


taskDataProvider = new ListDataProvider<TaskHeader>();  
taskDataProvider.addDataDisplay(taskTable);
ListHandler<TaskHeader> columnSortHandler = new ListHandler<TaskHeader>(
taskDataProvider.getList());
taskTable.addColumnSortHandler(columnSortHandler);

//Some other code that modifies the list in taskDataProvider

当我单击列标题时,ColumnSortEvent 被触发,但经过检查我可以看到 columnSortHandler 中的列表是空的。对 taskDataProvider 列表所做的任何修改都没有反射(reflect)在 columnSortHandler 中。我错过了什么吗?

最佳答案

例子here似乎正是您要找的东西。从您展示的代码来看,我会说您缺少比较器

columnSortHandler.setComparator(yourColumn,
new Comparator<TaskHeader>() {
public int compare(TaskHeader t1, TaskHeader t2) {
return o1.field1.compareTo(o2.field1);
}
});

此外,在向 dataProvider 添加或删除数据时,请确保您没有设置新列表,而是添加或删除数据。否则你的 dataProvider 和 listHandler 将不会使用同一个列表..

不要:

taskDataProvider.setList(newList);

做:

taskDataProvider.getList().add(newItem);

关于GWT 如何使用 ListHandler 和 ListDataProvider 对 CellTable 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6436610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com