2012-11-12 51 views
1

我有一個Cell Table,其中最後一列是複選框。我想添加一個Check-All-Box作爲頁腳,單擊時選中每一行的每個複選框。不知怎的,它不會在這裏工作是我走到這一步:帶有複選框的java gwt celltable

Column<Object, Boolean> select = new Column<Object, Boolean>(new CheckboxCell()) { 
     @Override 
     public Boolean getValue(Object object) { 
      return msm.isSelected(object); 
     } 
    }; 

    select.setFieldUpdater(new FieldUpdater<Object, Boolean>() { 
     public void update(int index, Object object, Boolean value) { 
      msm.setSelected(object, value); 
     } 
    }); 

    final Header selectAllHeader = new Header(new CheckboxCell()) { 
     @Override 
     public Boolean getValue(){ 
      return msm.getSelectedSet().size() == getRowCount(); 
     } 
    }; 

    selectAllHeader.setUpdater(new ValueUpdater<Boolean>() { 
     @Override 
     public void update(Boolean value) { 
      for (Object o : getVisibleItems) { 
       msm.setSelected(o, value); 
      } 
     } 
    }); 
     //works 
    addColumn(select, selectAllHeader); 
     //does not work 
    //addColumn(select, HEADER, selectAllHeader); 
+0

我從來沒有使用celltable。我只是做我自己的,簡單而靈活。 GWT中的一個對於人類來說非常難以使用。 – texasbruce

回答

0

我曾經在這裏提出一個解決方案:

http://code.google.com/p/google-web-toolkit/issues/detail?id=7014

它可以很好地。你可以在你的頁腳中使用它。

+0

我試了一下(更新了上面的代碼),但只有當我添加標題中的選擇所有框它不工作時,我將它添加爲頁腳爲什麼? – wasp256

+0

那麼有沒有解決這個問題?如果是 - 請分享您的解決方案 –