我正在开发一个使用CheckBoxListView的GWT应用程序。这是我用来构建复选框的一段代码:
list = new ArrayList<GwtRole>();
RpcProxy<ListLoadResult<GwtRole>> roleUserProxy = new RpcProxy<ListLoadResult<GwtRole>>() {
@Override
protected void load(Object loadConfig, AsyncCallback<ListLoadResult<GwtRole>> callback) {
GWT_ROLE_SERVICE.findAll(currentSession.getSelectedAccount().getId(),
callback);
}
};
BaseListLoader<ListLoadResult<GwtRole>> roleLoader = new BaseListLoader<ListLoadResult<GwtRole>>(roleUserProxy);
roleLoader.load();
ListStore<GwtRole> roleStore = new ListStore<GwtRole>(roleLoader);
aa = new CheckBoxListView<GwtRole>(){
@Override
protected GwtRole prepareData(GwtRole model) {
String name = model.getName();
model.set("name", name);
return model;
};
};
aa.setStore(roleStore);
这是一段代码,我从复选框中收集检查值:
list = aa.getChecked();
但是我还需要在复选框中未选中的值。 有人可以帮助我看看我能做到这一点吗?
答案 0 :(得分:0)
尝试将roleStore与已检查的值进行比较并获取剩余的内容。
List<GwtRole> unckecked = new ArrayList<>(roleStore).removeAll(list);
如果roleStore太大,或循环遍历不复制数组