2013-06-26 3 views
0

나는 GXT (2.2.5)로 작업 중이며 그리드에서 chenged 체크 박스의 행 인덱스를 가져와야한다. 내가하고있는 일은 그리드를 만들고 GridCellRender를 적용하여 첫 번째 열에 checkBox를 표시 한 다음 모든 체크 박스가 값 (OnChange 이벤트에서 리스너)을 변경하면 변경된 체크 박스의 행 인덱스를 가져와야합니다. 이것은 잠시 내 코드의 일부입니다.그리드에서 선택된 체크 박스의 행 인덱스를 얻는 방법 GXT

감사합니다.

답변

0

이 같은 그것을 얻을 수 있습니다

checkColumn.setRenderer(new GridCellRenderer() { 
     @Override 
     public Object render(final ModelData model, String property, ColumnData config, int rowIndex, int colIndex, final ListStore store, Grid gri) { 

      final CheckBox check = new CheckBox(); 
      check.setData("indx", store.indexOf(model)); 

      check.addListener(Events.OnChange, new Listener<BaseEvent>() { 
       @Override 
       public void handleEvent(BaseEvent be) { 
        ////////// 
        int indx = ((CheckBox) be.getSource()).getData("indx"); 
        ////////// 

       } 
      }); 
      return check; 
     } 
    }); 
:
checkColumn.setRenderer(new GridCellRenderer() { 
     @Override 
     public Object render(final ModelData model, String property, ColumnData config, int rowIndex, int colIndex, final ListStore store, Grid gri) { 
      final CheckBox check = new CheckBox(); 
      check.addListener(Events.OnChange, new Listener<BaseEvent>() { 
       @Override 
       public void handleEvent(BaseEvent be) { 
        ////////// 
        int indx = store.indexOf(model); 
        ////////// 

       } 
      }); 
      return check; 
     } 
    }); 

아니면이 (당신이 최종 사용자의 저장모델에 변수를 변환해야합니다)

도움이 되었기를 바랍니다.

+0

작동하지 않습니다. hoy는 잘 모르지만 각 행의 확인란을 추가하기 위해 gridCellRenderer를 사용하고 있습니다. 내 표는 Facultad (내가 만든 것)라는 Object를 사용합니다. –

+0

변수 유형으로 인해 저장소 및 모델 변수가 디버깅 중에 null로 표시 될 수 있지만이 메서드는 인덱스를 다시 제공해야합니다. –

+0

이와 비슷한 것이 도움이 될까요? : grid.getSelectionModel(). getSelectedItem() ; –

관련 문제