2012-09-18 168 views
0

enter image description hereGWT:如何獲得cellTable

我這種情況的複選框的值,我想刪除這個celltable其複選框檢查的這個CLIK對象「刪除」按鈕,

任何想法如何獲得其複選框在這個cellTable被選中,當我點擊delte按鈕這些對象..

感謝

回答

0

如果用delete單列你的要求,那麼你可以在celltable使用SingleSelectionModel否則MulitiSelectionModel。我已經用單選模型編寫了一些代碼,它可能會提供一些想法。即

selectionModel = new SingleSelectionModel<T>(); 
cellTable.setSelectionModel(selectionModel) //Set into your cellTable: 

當你選擇一個複選框,然後行將被自動選擇,對象將設置爲選擇模型。

CheckboxCell checkboxCell=new CheckboxCell(true, false); 
      Column<T, Boolean> boolColumn=new Column<T, Boolean>(
         checkboxCell) { 
      @Override 
      public Boolean getValue(T object) {        
      return selectionModel.isSelected(object); 
     } 
     }; 

在刪除按鈕單擊,使用選定的對象,它會爲您提供一個刪除對象。 selectionModel.getSelectedObject();

1

@junaidp,當你沒有提供任何代碼,我假設您已使用CheckBoxCell生成checkbo x列並將MultiSelectionModel分配給您的cellTable。您可以使用下面的代碼:

Set<T> selectedObjects = ((MultiSelectionModel<T>)(cellTable.getSelectionModel())).getSelectedSet(); 

這裏的selectedObjects將是T型的,你應該已經指定爲CellTable<T>selectedObjects將是僅與檢查行關聯的對象。

1

您可以檢查一個給定的單元格的選中狀態有:

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