我有一个ListGrid
,需要在右边有选择字段。有办法吗?
我尝试过:
ListGrid listgrid= new ListGrid(){
@Override
public ListGridRecord[] getSelectedRecords() {
ArrayList<ListGridRecord> ret = new ArrayList<ListGridRecord>();
for(ListGridRecord record : this.getRecords()) {
if ("true".equals(record.getAttribute("selected"))) {
ret.add(record);
}
}
ListGridRecord[] returnable = new ListGridRecord[0];
returnable = ret.toArray(returnable);
return returnable;
}
@Override
protected Canvas createRecordComponent(ListGridRecord record, Integer colNum) {
String fieldName = this.getFieldName(colNum);
if (fieldName.equals("selected")) {
DynamicForm form = new DynamicForm();
CheckboxItem select = new CheckboxItem("selected");
select.setWidth("8%");
form.setFields(select);
return form;
}
else {
return null;
}
}
};
然而,当我收到错误日志的通知时,由于重用CheckBoxitem
那么,选择正确的ListGrid
是否有一种干净的方式?
答案 0 :(得分:0)
我认为您应该尝试按以下方式重新排序列:
listGrid.reorderField(0, lastposition);
此处0
表示第一个复选框列&amp; lastposition
表示网格列的最后一个索引。