2014-06-13 5 views
0

두 개의 열이있는 DataGrid 테이블을 만들었습니다. 체크 박스 col 및 문자열 col. 버튼을 누르면 선택한 문자열을 가져오고 싶습니다. 현재 버튼을 누르면 빈 해시 세트가 생깁니다.확인란이있는 GWT Datagrid 만들기

선택 모델 : 여기

private MultiSelectionModel<String> selectionModel = new MultiSelectionModel<String>(KEY_PROVIDER); 

내가 버튼

public Set<String> getSelectedItems(){ 
Set<String> s = selectionModel.getSelectedSet(); 
return s; 

}

답변

0

에서 호출하는 방법을 열 여기

Column<String, Boolean> checkColumn = 
     new Column<String, Boolean>(new CheckboxCell(true, false)) { 
    @Override 
    public Boolean getValue(String object) { 
     // Get the value from the selection model. 
     return selectionModel.isSelected(object); 
    } 
    }; 

입니다 만드는 방법이다 두 조각 를 찾을 수 없다. FieldUpdater를 checkColumn에 추가해야하며 체크 박스 관리자에 연결해야합니다. T를 개체로 대체하십시오.

checkColumn.setFieldUpdater(new FieldUpdater<T, Boolean>() { 
    @Override 
    public void update(int index, T object, Boolean value) { 
     getSelectionModel().setSelected(object, value); 
     dataProvider.refresh(); 
    } 
}); 
setSelectionModel(selectionModel, DefaultSelectionEventManager.<T> createCheckboxManager(0)); 
+0

어떤 유형의 dataPrivider입니까?/나는 상쾌하니? –

+0

DataGrid를 백업하는 ListDataProvider 또는 AsyncDataProvider 입니다. 어떤 시점에서 dataProvider.addDataDisplay (myDataGrid); –